如何解决关闭datareader或将其设置为null哪个更好?
| 我想知道以下操作的优缺点 我应该比调用close方法更好地将datareader设置为null。如果这很好,那么优点是什么,那么使用它又有什么问题呢?解决方法
您应该改用
using
语句:
using (var reader = sqlCommand.ExecuteReader())
{
// do stuff
}
这样,即使在“ do stuff”块中引发了异常,也可以确保读者已关闭(配置)。
有关完整的示例,请参见此MSDN页面。
更新(关于您的评论):
实际上,“ 0”语句不过是一个try-finally块,以确保在每种情况下都将读取器放置(关闭)。例如。上面的代码与此等效:
SqlDataReader reader = null;
try
{
reader = sqlCommand.ExecuteReader();
}
finally
{
reader.Dispose(); // closes the reader
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。