关闭连接之前关闭阅读器
您是否应该始终在关闭连接之前关闭 DataReader,还是直接关闭连接就可以了?通过关闭连接是否会有效地关闭读者?
(这是针对 c#.net 3.5 的)
谢谢!
Should you always close a DataReader before closing the connection, or is it okay to just close the connection? By just closing the connection does that effectively close the reader?
(This is for c#.net 3.5)
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
除了明确您的意图之外,Microsoft 文档 (使用 DataReader (ADO.NET) 检索数据):
Aside from making your intent clear, there is this from the Microsoft documentation (Retrieving Data Using a DataReader (ADO.NET)):
同时关闭 DataReader。
我认为。如果它实现了 IDisposable ,或者具有 .close() 方法或类似的构造,文档指出您在完成此实例后应该调用 - 执行它。
不要依赖其他东西来为您处理它 - 除非文档明确指出它可以这样做。对于 DataReader/DbConnection - 文档没有提到类似的内容。
Close the DataReader as well.
imo. if it implements IDisposable , or has a .close() method or a similar construct that the documentation states you should call when you're done with this instance - do it.
Don't rely on something else to take care of it for you - unless the documentation explicitly states that it does. For a DataReader/DbConnection - the docs doesn't mention anything like this.
我更喜欢利用 C# using 语句,它会为您调用 dispose() 。这是一个不错的解释。
使用语句
I prefer to leverage the c# using statment which will call dispose() for you. Here is a decent explanation.
Using Statment