using block
的重要性是什么?为什么我要在using block?
例如:
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["newConnectionString"].ConnectionString);
using (con)
{
con.Open();
//
// Some code
//
con.Close();
}
这是使用using statement
的正确方法吗?
答案 0 :(得分:1)
using
与IDisposable
界面一起使用。
它保证在退出作用域之前,将在using子句中的对象上调用Dispose
方法。
没有其他原因。
答案 1 :(得分:1)
using (x) {...}
只是syntactic sugar
try
{
...
}
finally
{
x.Dispose();
}
答案 2 :(得分:0)
定义是:“定义一个范围,在该范围之外将放置一个或多个对象。” 有关详细信息,请参阅MSDN。
答案 3 :(得分:0)
当您使用的对象时 封装任何资源,你必须 完成后确保完成 对象,对象的Dispose 方法被调用。这可以做到 更容易使用using语句 在C#。
更多信息: http://www.codeproject.com/KB/cs/tinguusingstatement.aspx
答案 4 :(得分:0)
using语句确保即使在对象上调用方法时发生异常,也会调用Dispose(of IDisposable)。在您的示例中,SqlConnection将关闭并放置在using块的末尾。
您的示例不是定义使用块的常用方法,因为您可能会在使用块后意外重用con。
试试这个:
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["newConnectionString"].ConnectionString))
{
con.Open();
//
// Some code
//
}