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

C#-EF代码首先实现的接口属性【代码】

我有以下模型.interface IKeywordedEntity {IEntityCollection<Keyword> Keywords { get; } } class Foo : EntityBase, IKeywordedEntity {public virtual IEntityCollection<Keyword> Keywords { get { ... } } } class Bar : EntityBase, IKeywordedEntity {public virtual IEntityCollection<Keyword> Keywords { get { ... } } }我想编写一个扩展方法,该方法自动在OnModelCreating中为每个关键字处理关键字.public static void...

C#关于Equals实现的不同MSDN准则

为什么以下文档在实现Equals方法时谈论不同的方法? > [MSDN] Guidelines for Overriding Equals() and Operator == (C# Programming Guide)> [MSDN] Implementing the Equals Method 第二个文档(较新)未明确实现Equals的强类型版本(如公共布尔Equals(MySuperTrooperClass o)). 从准则之一中删除强类型方法的根本原因是什么?我应该在生产代码中使用哪种方法?解决方法:删除强类型版本没有任何好处.恰恰相反,正如第一页本身提到的那...

有什么东西可以在C#中实现快速随机访问列表吗?【代码】

我找到了OrderedDictionary,但是它并不能完全满足我的要求. OrderedDictionary似乎提供了数据的字典或列表视图,但是您不能很好地在它们之间进行切换. 例如.OrderedDictionary mylist = new OrderedDictionary();mylist.Add(1, "Hello"); mylist.Add(4, "World"); mylist.Add(7, "Foo"); mylist.Add(9, "Bar");使用此代码,我可以直接访问mylist [7]并获取“ Foo”,或者可以按正确的顺序遍历内容,但是我无法快速回答“列表中Foo之后是...

C#单元测试-模拟,存根或使用显式实现【代码】

之前已经对此进行了多次讨论,但是以下示例中的优点并不明显,因此请耐心等待. 我正在尝试确定是否在单元测试中使用模拟实现,并且给出以下两个示例,我不确定,第一个使用NSubstitute进行模拟,第二个使用SimpleInjector(Bootstrapper对象)解决的实现. 本质上,两者都在测试同一件事,即当调用.Dispose()方法时,将Disposed成员设置为true(请参阅本文底部的method的实现). 在我看来,第二种方法对于回归测试更有意义,因为模拟代理在第一个示...

C#中类似模板的实现垫片【代码】

我发现自己需要这样的东西:// This could just as well be a concrete class. // // It is an interface for the sake of this example. public interface Quark {void Do(); }public class Strange : Quark {public virtual void Do(){// Something is done}public void DoSpecificThing(){MessageBox.Show("Specific Thing!");} }public class Charm : Quark {public virtual void Do(){// Something else is done}public void ...

C# 简单通信(实现文件传输)【代码】【图】

https://blog.csdn.net/Sayesan/article/details/82185772 之前写过一个简单通信传输,不过只有聊天的功能,现在实现了文件传输的功能,借鉴于网上一篇博客,不过他写的仅仅是客户端对于服务器发送文件,我稍微优化了这个功能,实现了,端与端之间信息的互发和文件的互发,感觉学习这些新的东西,还刚开始,进度很慢,很多东西都需要从新去学习,不过慢慢来!Fighting!!! 服务器: using System;using System.Collectio...

C# Asp.NET实现上传大文件(断点续传)

以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载。 准备文件上传的API #region 文件上传 可以带参数 [HttpPost("upload")] public JsonResult uploadProject(IFormFile file, string userId) { if (file != null) { var fileDir = "D:\\aaa"; if (!Directory.Exists(fileDir)) ...

如何在c#中实现强制用户以特定格式输入值的分段文本框?【代码】

我需要在Windows窗体中实现一个文本框,其中用户必须遵循值格式的约束.例如,我要强制他们输入格式为00-000-0-0000的数字,并且我希望破折号出现在文本框中.我以为这些被称为分段或格式化的文本输入,但是在Google中找不到任何相关信息.任何形式的提示表示赞赏.解决方法:您正在寻找完全针对此类情况设计的MaskedTextBox,可以在MSDN中找到有关它的更多信息. 对于您的示例,您只需要将MaskedTextBox的Mask属性设置为您提供的格式:maskedT...

c#-使用链接列表实现队列-创建链接列表,但在打印后停止工作【代码】

这是我到目前为止所拥有的.我已经生成了一个链表,但是当程序打印出链表时,会弹出一个对话框,说我的程序已停止工作.我正在使用Visual Studio.我需要使用链表实现队列.我可以创建它并打印出来,但是当它打印出来时,程序停止了.我已经尝试了所有方法,但似乎无法解决此错误.当我尝试在链接列表类中使用其他方法但没有包括这些方法时,也会发生这种情况.using System; using System.Collections.Generic; using System.Linq; using System...

c#-获取实现类型的具体属性【代码】

鉴于以下课程public Foo {public Foo() {this.Bar = new Bar();}public IBar Bar{ get; set;} }public Bar : IBar {// implemented properties}如何使用反射获得Foo属性Bar的具体实现?instance.GetType().GetProperty("Bar").PropertyType仅产生接口.解决方法:如果您尝试获取实现IBar的类型,则应获取其值并采用该类型:var type = instance.GetType().GetProperty("Bar").GetValue(instance,null).GetType()

c#-使用MVVM模式正确实现WPF自定义MessageBox【代码】

我对WPF还是很陌生,我必须按照MVVM模式实现自定义消息框,但不使用任何MVVM帮助程序库.此消息框将用于提供有关应用程序中发生的意外错误的信息-详细信息中的stacktrace一般消息.我正在为此处理DispatcherUnhandledException事件,并且正在此事件的处理程序中使用此自定义消息框.void Current_DispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e){CustomMessageBoxViewModel messageBox = new Cus...

如何使用C#在mongo DB驱动程序2.0版中使用IMongoDatabase接口实现“ FindOne”和“ EnsureIndex”?【代码】

当我使用FindOne时,它说“’MongoClientExtensions.GetServer(MongoClient)’已过时:请改用新API.” Observer.Client”作为警告. 这是我的代码collection.EnsureIndex(IndexKeys.Ascending("Username", "Type"), IndexOptions.SetUnique(true));var userlog = collection.FindOne(Query<UserLog>.Where(ul => ul.Username == username && ul.Type == type));解决方法:我希望这可以为您的FindOne功能提供帮助public async static T...

c#-简单注入器-将接口的特定实现注入到特定控制器【代码】

我有两个实现相同接口的搜索服务.其中一个仅用于搜索一小组内部Umbraco内容,另一个用于同时搜索Umbraco和外部内容,并且使用默认搜索引擎以外的其他内容.我希望保留它们两者,因为它们各自的性能都很好,它们都使用了它所使用的数据集. 是否可以在Simple Injector中指定何时注入哪个服务?我想为大多数控制器注册第一个控制器,基本上将其作为默认实现.然后,我只需要为两个特定的控制器注册第二个. 在浏览时,我找到了解决此问题的方法,...

C#:使用?:运算符实现函数?【代码】

这个问题已经在这里有了答案: > Ternary Expression Possible? 2个我想问一个有关的问题?条件运算符.该函数的通用语法如下(在Microsoft网站上找到)int input = Convert.ToInt32(Console.ReadLine()); string classify;// if-else construction. if (input < 0)classify = "negative"; elseclassify = "positive";// ?: conditional operator. classify = (input < 0) ...

首页> C#>我如何使用我的接口的实现,而不创建对实现的依赖?【代码】

我正在尝试利用从学习SOLID原理中学到的知识来制作简单的ASP.NET Webform. 我已经将解决??方案设置为3个项目:主要的asp.net Webforms项目,Data Access Interfaces类库项目和Data Access类库项目(具有Data Access Interfaces项目中接口的实现). 我在数据访问接口程序集中有一个ICoinStorage接口,看起来像这样(Coin只是生活在数据访问接口程序集中的DTO类):public interface ICoinStorage {void Persist(IEnumerable<Coin> coins);...