using ( var sw = new StreamWriter ( file ) )
{
XmlSerializer xs = new XmlSerializer ( typeof ( T ) );
xs.Serialize ( sw, data );
sw.Close()
}
我知道你不必调用Dispose
,但是你是否需要调用sw
上的Close
方法?
(注:本文涉及IT技术相关内容,建议读者具备一定的专业知识)
using ( var sw = new StreamWriter ( file ) )
{
XmlSerializer xs = new XmlSerializer ( typeof ( T ) );
xs.Serialize ( sw, data );
sw.Close()
}
我知道你不必调用Dispose
,但是你是否需要调用sw
上的Close
方法?
不需要!你不必这样做。使用“using”即可解决。
using
调用IDisposable
的Dispose方法,这也是Close所做的。 - Dan JClose
调用Dispose
还是相反都是实现细节。在 StreamWriter
的情况下,确实是Close
调用Dispose
,但例如在 SqlDataReader
中,Dispose
方法调用Close
。(当然,无论哪种方式最终结果都是相同的。) - LukeH