使用using块创建XmlWriter是否足够(没有调用Close())或者最好使用try/finally块并最终调用Close()?
wom*_*omp 16
using块是try/finally块的快捷方式,在任何实现IDisposable的对象上调用Dispose().
对于流和流写入器,Dispose()通常手动调用Close().使用反射器,这是XmlWriter的Dispose方法:
protected virtual void Dispose(bool disposing)
{
if (this.WriteState != WriteState.Closed)
{
try
{
this.Close();
}
catch
{
}
}
}
Run Code Online (Sandbox Code Playgroud)
所以简短的回答是肯定的,该using块将处理为您关闭XmlWriter.