编写我们自己的 Dispose 方法而不是使用 Idisposable
在阅读了很多关于 IDisposable 的文章后,我对它的用法感到困惑。所有文章都解释了它是什么以及如何实现它,但我想了解如果没有它我们会错过什么。 下…
是否必须处理本机方法引用 - 如果是的话,是否有任何推荐的做法可以这样做
我有一个使用 user32.dll 中的方法的类: [System.Runtime.InteropServices.DllImport("user32.dll")] private static extern bool SetForegroundWind…
在失败的初始化程序或构造函数中处理 IDisposable
.Net 中是否有任何好的模式来确保如果在构造期间(可能在字段初始值设定项期间)引发异常,对象拥有的 IDisposable 字段将被释放?在 Try/Catch 块中…
有关 C# Dispose 模式的具体问题
我有一些关于 C# 中的 Dispose 模式的基本问题。 在下面的代码片段中,这似乎是实现处置模式的标准方法,您会注意到如果处置为 false,则不会处理托管…
处理 Observable 生成的 IDisposable 项目
我有一个 Observable (WebResponse 实现 IDisposable) responseObservable .Where(webResponse => webResponse.ContentType.StartsWith("text/html"…
使用 Dispose() 或终结器来清理托管线程?
假设我有一个 C++0x 中的消息泵类,如下所示(注意,SynchronizedQueue 是函数 的队列,当您在队列上调用 receive() 并且它是空的时,它会阻塞调用线…
如何使用 LINQ 处理 IDisposable 序列?
对序列元素调用 Dispose() 的最佳方法是什么? 假设有这样的情况: IEnumerable locations = ... var streams = locations.Select ( a => new FileStr…
具有 StructureMap (IoC) 的 IQueryable 存储库 - 如何实现 IDisposable?
如果我有以下存储库: public IQueryable Users() { var db = new SqlDataContext(); return db.Users; } 我知道只有在触发查询时才会打开连接: publ…
确保对控制器中创建的对象进行 IDisposable 调用并移交给视图
我一直都知道,所有优秀的程序员都会对任何实现 IDisposable 的对象调用 Dispose,例如 EF 中的 ObjectContext 类。 我是 ASP.NET MVC 新手,所以这可…
SqlConnection 会被 GC 处理掉吗?
免责声明:我知道在处理非托管资源时应该实现IDisposable。代码的其余部分应该是确定性的,并执行 using (...) { } (相当于 try {} finally { Dispos…
LINQ 查询和 IDisposable
我目前正在编写一段代码,该代码执行一些搜索,返回 IDisposable 对象(DirectoryEntry 具体来自 ADAM 实例),最终得到的代码类似于 using(var entry…
确保当 .net 类暴露给 COM 时调用 Dispose
我已经向 COM 公开了一个 .net 类。该类继承自IDisposable,因为我需要清理一些非托管资源。在 .net 环境中,我会将我的类包装在 using 作用域中,以…
寻找 Stylecop 完美注释“protected override void Dispose(bool disducing)”
我知道,StyleCop 并不完美,但我们尝试以有用的方式使用它。我确实喜欢它抱怨未记录的论点。现在,对于属性和构造函数,它建议文本应该是什么,但它…
对不需要 IDisposable 的类实现 IDisposable 有何影响?
我再次运行静态分析检查,但我收到了数百条关于“ Label foo = new Label(); //Where this is an ASP.NET web forms label 我需要在这些 Web 表单标签…