XmlReader和IDisposable

时间:2009-07-01 02:16:16

标签: .net-2.0 idisposable xmlreader

也许我的眼睛在愚弄我,但是在.NET 2.0中,XmlReader是如何实现Dispose但没有Dispose()方法的呢?我看到它有Dispose(bool),但不是无参数的重载。

2 个答案:

答案 0 :(得分:2)

它显式地实现了System.IDisposable.Dispose()。 Dispose(boolean)是执行此操作的常规方法...

protected virtual void Dispose(bool disposing)
{
    if (this.ReadState != ReadState.Closed)
    {
        this.Close();
    }
}

答案 1 :(得分:1)

...所以你需要先叫它。这样

    XmlReader r = XmlReader.Create(s);
    ((IDisposable)r).Dispose();