【c# – 如何实现Monitor类?】教程文章相关的互联网学习教程文章

c# – 将常规属性转换为自动实现的属性

我正在升级旧的C#代码库,并希望将常规属性转换为自动实现的属性.可以从Visual Studio完成吗?解决方法:它是possible using Resharper.你可以下载完整的functioning trial version for 30 days.

c# – 使用自动实现的属性或自己实现属性【代码】

在C#中,我们可以创建一个自动实现的属性public string MyValue{get;set;}但是,我们也可以自己创建一个属性private string _myValue; public string MyValue {get { retrun _myValue; }set { _myValue = value; } }我的问题是在哪种情况下我们应该使用auto one以及我们应该自己实施哪种情况?解决方法:至少有一个明显的案例,你不应该使用自动实现的属性:两个不同的DLL之间的任何类型的二进制序列化. 二进制序列化依赖于私有成员,并...

C# 实现http post,get

string Url = string.Format(@"http://www.baidu.com?key=abc"); //GETtry{HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(Url);req.Method = "GET";req.ContentType = "application/x-www-form-urlencoded";req.Timeout = 3000;//单位毫秒WebResponse wr = req.GetResponse();Stream rs = wr.GetResponseStream();Encoding encode = System.Text.Encoding.GetEncoding("utf-8");StreamReader rsp = new StreamReade...

c# – 重新实现继承的接口方法【代码】

我没有完全理解使用Interfaces,所以我不得不问:-) 我使用BaseClass,它实现了IBaseClass接口.这个接口只包含一个声明:public interface IBaseClass {void Refresh (); }所以我在我的Baseclass中实现了一个Refresh方法:public void Refresh (){Console.WriteLine("Refresh");}现在我想使用从这些Baseclass扩展的一些类并实现IBaseClass接口:public class ChildClass : BaseClass,IBaseClass{}但是在我的BaseClass中实现“刷新”的...

c# – 依赖注入问题 – 如何清理我的实现?【代码】

我正在使用依赖注入来模拟类,以便对依赖于它们的其他类进行单元测试:class Foo : IFoo {// production code }class MockFoo : IFoo {// mock so other classes that depend on Foo can be unit tested }class Bar {public DoSomething(){var barValue = 20;// use dependency injection to get Foo instance.DependencyInjection.Instance.Foo.ExampleMethod(barValue);} }但是,设置我的依赖注入类变得笨拙,迷宫和复杂:public cl...

在C#中实现多个IEnumebles【代码】

我有一个泛型类,Class< T>,它实现了IEnumerable< T>. T也被限制为实现IConvertable. 我也希望这个类能够假装成一个类似字符串的对象,所以我想实现IEnumerable< char>.然而,IEnumerable< T>和IEnumerable< char>碰撞 – 如果T是char,会发生什么? 有没有人对如何做到这一点有任何建议? 编辑:这里有一些澄清 – 我希望能够做到以下几点:public IEnumerator<T> GetEnumerator() {for (var i = _offset; i < _offset + _length; i++...

如何使用C#中的反射查找实现泛型抽象类的所有类?【代码】

我有一个看起来像这样的c#类public abstract class Listener<T> where T : Event {public abstract void Handle(T _event); }我将这个类扩展为这样的东西public class SendWelcomeEmail : Listener<UserWasCreated> {public override void Handle(UserWasCreated _event){//...} }我需要使用反射来查找扩展Listener的所有类<>基类. 我尝试了以下内容var listeners = AppDomain.CurrentDomain.GetAssemblies().SelectMany(assembly ...

c# – 使用Josh Smith的WPF MVVM演示应用程序实现ListView过滤器【代码】

我一直在尝试扩展Josh Smith的演示MVVM应用程序,以便更好地理解它背后的原理,并且当我尝试使用ListView在View上实现过滤器功能时,我遇到了障碍. 我花了几个小时研究和涉猎,但它只是没有用. 我的第一步是将视图中的文本框绑定到ViewModel中的属性:<TextBox Height="25" Name="txtFilter" Width="150" Text="{Binding Path=Filter, UpdateSourceTrigger=PropertyChanged}"/>这在我的VM中匹配:public string Filter{get { return th...

c# – WCF:如何在单独的项目中将实现逻辑转换为契约接口?【代码】

就像标题所说的那样,我希望将我的逻辑保存在与服务合同相关的单独项目中,这样就可以保持独立和隐藏.我已经看到它说可以做到这一点,但我找不到任何关于如何做的例子. 我将所有必要的代码移到了另一个项目中,但是当我测试它时,只有类型对客户端可见,而不是方法. 所有方法都在界面中标记为[OperationContract]. 我猜测必须有一种方法将实现逻辑专门连接到合同而不仅仅是Class:IInterface,否则,如果有2个类似的类会发生什么,例如:Cla...

c# – 我只需要实现接口的一些方法【代码】

在我的项目中有一个界面.在界面中有很多方法.我们公司的其他开发人员继承了某些类的接口并实现了我需要实现的所有方法天气.那个时候我遇到了一些错误. “不实现接口成员”.我怎么解决这个问题?例如:-public interface IComplianceRepository{IList<ComplianceModel> LoadComplianceModel(Guid userId);bool CreateCompliance(ComplianceModel complianceModel);IList<ComplianceType> LoadComplianceType();IList<ComplianceStat...

c# – 接口方法返回类型是实现接口的类【代码】

我无法理解界面.在这里搜索了类似的问题后,我想出了以下界面,用于定义所有类所需的CRUD操作:public interface IData<T> {IData<T> Select(int id);List<T> SelectMultiple();void Insert();void Update();void Delete(); }然后在我的部分类中实现:public partial class Post : IData<Post> {public IData<Post> Select(int id){MyDataContext dc = MyDataContext.Create();return dc.Posts.Single(p => p.PostID == id);}public ...

c#ref int foo是作为C int ** foo实现的吗?【代码】

昨天我正和一位同事谈论这件事,这让我想到了.Net的传递参考.// C# class Foo {}static void Test(ref Foo foo) { ... }; static void Main() { Foo f;Test(ref foo); }必须使用双重间接实现,因为我们正在更改指针的值.因为所有引用类型都是引用(指针)// C# static void Test(Foo foo) { ... } static void Test(ref Foo foo) { ... };相当于像// C++ void Test(Foo *foo); void Test(Foo **foo);但如果这是一个VALUE类型,我们实际上...

C#中的Tribool实现【代码】

我正在尝试使用http://www.boost.org/doc/libs/1_41_0/doc/html/tribool.html作为参考来实现Tribool类型. 我正在使用结构,因为它是一个原始类型,不应该是可扩展的.我知道有三种类型的Tribools — True,False和Unknown,默认构造函数应该提供一个False Tribool.我的问题是,我将什么数据类型设置为True,False和Unknown?现在我有:struct Tribool {//True, False, and Unknown public constantspublic static readonly Tribool TRUE, ...

c# – 为什么要实现IEquatable接口【代码】

我一直在阅读文章并理解一定程度的接口,如果我想改正我自己的自定义Equals方法,似乎我可以在不实现IEquatable接口的情况下做到这一点.一个例子.using System; using System.Collections; using System.ComponentModel;namespace ProviderJSONConverter.Data.Components {public class Address : IEquatable<Address>{public string address { get; set; }[DefaultValue("")]public string address_2 { get; set; }public string ci...

c# – 使用{get;实现只读属性}【代码】

为什么不运行:class Program{static void Main(string[] args){Apple a = new Apple("green");}}class Apple{public string Colour{ get; }public Apple(string colour){this.Colour = colour;}}解决方法:您的代码对于Visual Studio 2015附带的C#6有效.它对以前版本的语言或Visual Studio无效.从技术上讲,你可以在VS 2013中安装一个旧的预发布版本的Roslyn,但现在VS 2015发布并不值得. 要发生此问题,要么使用错误版本的Visual Stu...