3
|
MatthewMartin muthu · 技术社区 · 14 年前 |
![]() |
1
6
其实你不需要打电话
TestDispose.ascx.cs测试配置:
如果在调试器中运行此命令,并且在
更新
有一件事让我很困扰,那就是我在任何地方都找不到这个文件。而
ASP.Net Page Lifecycle
是一个很好的资源它没有提到打电话
因此,不幸的是,没有实际的文档,我们目前依赖的是实现细节,而不是合同。虽然我不会因此而改变我的排除/辩护理由,但我只是想让其他读者了解这个答案。 |
![]() |
2
3
关于数据集本身,有 a question here on Stack Overflow 我认为一个好的经验法则是:如果您知道实现不做任何事情,而且很容易处理,那么就处理它,但不要特意(比如设置Page.Unload事件处理程序)去做。但是,如果您知道它会释放非托管资源, 除非文档另有说明,否则请将其处置(ala SharePoint)。 |
![]() |
3
1
你必须仔细看这堂课。如果它只是一个无害的Dispose(),那么你可以忽略它。有几个类因为它们的基类而拥有它。 反对这一推理的主要论点是:它可能在未来的版本中发生变化。不过,对于Label来说不太可能。
|
![]() |
4
0
是的,如果Dispose()方法不起任何作用,那么不调用Dispose将是无害的。如果您的静态分析工具实际上正在处理这些问题,那么如果您计划使用Winforms,您可能应该将其关闭。在我看来,这不是一个很好的分析,因为有很多场景中Dispose()被链接起来,并且只需要根调用(即streams/readers)。 |