我正在使用 someXmlReader
和object 对某些块XmlWriter
内的字符串做一些必要的工作。try...catch
我知道使用符号using (XmlReader NewReader = XmlReader.Create(...))
是首选语法,但我不太喜欢这样,所以我也在附加finally
块并执行NewReader.Close();
and NewWriter.Close();
。
然而,代码分析抱怨这些对象没有被释放,从而迫使我以某种方式调用Dispose()
方法。
问题是在这些类中Dispose()
方法是显式实现的,所以我必须使用((IDisposable)(NewReader)).Dispose();
and ((IDisposable)(NewWriter)).Dispose();
。
这种技术有什么缺点吗?