相关疑难解决方法(0)

是否有必要将StreamWriter包装在一个使用块中?

几天前我发布了一些这样的代码:

StreamWriter writer = new StreamWriter(Response.OutputStream);
writer.WriteLine("col1,col2,col3");
writer.WriteLine("1,2,3");
writer.Close();
Response.End();
Run Code Online (Sandbox Code Playgroud)

有人告诉我,在异常的情况下,我应该将StreamWriter包装在一个使用块中.这样的改变会使它看起来像这样:

using(StreamWriter writer = new StreamWriter(Response.OutputStream))
{
    writer.WriteLine("col1,col2,col3");
    writer.WriteLine("1,2,3");
    writer.Close(); //not necessary I think... end of using block should close writer
}
Response.End();
Run Code Online (Sandbox Code Playgroud)

我不确定为什么这是一个有价值的变化.如果在没有使用块的情况下发生异常,编写器和响应仍然会被清除,对吧?使用块让我获得了什么?

c#

22
推荐指数
2
解决办法
2万
查看次数

标签 统计

c# ×1