草庐IT

你应该

全部标签

c# - Resharper 不会自动转换为可序列化类中的自动属性 ​​- 应该吗?

我今天遇到了这个问题并且能够确定,在进行代码清理时,R#不会将属性从具有支持字段转换为使用SerializableAttribute装饰的类中的自动属性,例如usingSystem;namespaceDataContracts{[Serializable]publicclassClass1{privatebool_wontChange;publicboolWontChange{get{return_wontChange;}set{_wontChange=value;}}}}上述代码在自动代码清理期间不会更改。当然,我可以手动执行此操作,而且我仍然可以从R#中获得快速操作菜单选项以在单个

c# - 可以给我一个例子,什么时候应该使用 UIElement.UpdateLayout()?

我正在读这个UpdateLayout()method在MSDN中。它说:Ensuresthatallvisualchildelementsofthiselementareproperlyupdatedforlayout.但我不明白布局未正确更新是什么意思。我已经使用Silverlight/WPF一年多了,但我仍然没有使用过这种方法。那么有人可以给我一个需要使用这种方法的例子吗?这样我才能真正了解它的作用以及何时应该使用它? 最佳答案 如果您需要一个控件来立即完成它的布局,您可能想要调用它,以便您可以基于它做一些事情。例如,如果您想根

c# - 在这种特定情况下,我应该如何建模我的代码以最大限度地重用代码?

已更新:有关我如何实现该解决方案,请参阅问题结尾。很抱歉这个问题措辞不佳,但我不确定如何提出它才是最好的。我不确定如何设计一个可以重复使用的解决方案,其中大部分代码每次实现时都完全相同,但部分实现每次都会发生变化,但遵循相似的模式。我尽量避免复制和粘贴代码。我们有一个内部数据消息系统,用于跨不同机器上的数据库更新表。我们正在扩展我们的消息服务以将数据发送给外部供应商,我想编写一个简单的解决方案,如果我们决定将数据发送给多个供应商,可以重复使用。该代码将被编译成一个EXE文件并定期运行以向供应商的数据服务发送消息。以下是代码作用的粗略概述:publicclassOutboxManager

c# - 在代码中使用 '"using"关键字时,我应该在哪里捕获异常?

哪个在结构上更好?classProgram{staticvoidMain(string[]args){try{using(Foof=newFoo()){//somecommandsthatpotentiallyproduceexceptions.}}catch(Exceptionex){Console.WriteLine(ex.Message);}}}或者...classProgram{staticvoidMain(string[]args){using(Foof=newFoo()){try{//somecommandsthatpotentiallyproduceexceptions.

c# - 为什么我不应该使类可序列化?

我正在我的View状态中存储一些对象,我想知道制作一个类Serializable是否有任何缺点?让所有的类都Serializable是不好的做法吗? 最佳答案 首先。避免View状态。通常序列化(文本)用于传输对象。您应该避免将任何不是DTO(数据传输对象)或消息类的类标记为可序列化。我们这样做有几个原因。以序列化格式获取您的类的内容可能没有非DTO类的方法信息(在原始程序集中)。其次,一个类可能引用一个资源(数据库连接、文件句柄等)不要序列化这些,因为反序列化不会重新建立资源连接和状态,除非明确设计,但这仍然是一个坏主意。所以总而

c# - 在测试期间应该如何处理过时的索引?

我在内存模式下使用RavenDB进行单元测试。我的查询由静态索引支持。我没有使用WaitForNonStaleResults()API(我也不想)。典型的测试工作流程是:在内存模式下初始化RavenDB使用IndexCreation.CreateIndexes(Assembly,IDocumentStore)集成索引插入测试数据(用于验证查询行为)运行查询验证查询输出我注意到第1-3步发生得如此之快,以至于静态索引在第4步之前没有时间更新-因此索引已经过时。我已经为此创建了一个快速解决方法。在第3步之后,我执行:while(documentStore.DocumentDatabase.

c# - 我应该使用什么作为虚拟等待?

我有一个基类,它提供了一个具有以下签名的方法:virtualasyncTaskRunAsync()派生类应该用类似的东西覆盖这个实现publicoverrideasyncTaskRunAsync(){awaitbase.RunAsync();awaitthis.DoSomethingElse();}现在,编译器警告我Base.RunAsync缺少await语句。我希望我的代码没有警告,而不是抑制警告,并且即使派生类不提供覆盖实现,它也无需提供null检查即可运行,因此使用virtualTaskRunAsync()(省略async关键字)是不可能的。目前,基本方法中的实现是awaitTa

C#:在什么情况下应该清空引用?

TheCLRProfilercanalsorevealwhichmethodsallocatemorestoragethanyouexpected,andcanuncovercaseswhereyouinadvertentlykeepreferencestouselessobjectgraphsthatotherwisecouldbereclaimedbyGC.(Acommonproblemdesignpatternisasoftwarecacheorlookuptableofitemsthatarenolongerneededoraresafetoreconstitutelater.

c# - 我应该为 Asp.NET web-api 路由使用 RouteParameter 还是 UrlParameter?

我已经看到两者都被使用了,所以我想知道,它们是做同样的事情还是做不同的事情?如果是后者,有什么区别?我尝试通过查看visualstudioMVC4(rc)webapi模板来自己回答这个问题,但遗憾的是它同时使用了这两种模板,所以我的困惑仍然存在。以下是模板包含的内容:publicclassRouteConfig{publicstaticvoidRegisterRoutes(RouteCollectionroutes){routes.IgnoreRoute("{resource}.axd/{*pathInfo}");routes.MapHttpRoute(name:"DefaultApi

c# - 每个程序员都应该知道哪些框架异常?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭11年前。我最近用C#开始了一个新项目,当我在函数中编写一些异常抛出代码时,我发现我真的不知道我应该使用哪个异常。以下是许多程序中经常抛出的常见异常:ArgumentExceptionArgumentNullExceptionInvalidOperationExceptionDivideByZeroExceptionFileNotFoundException...