5

次のコードでは、XmlNodeList戻り値として取得しますXmlDocument.SelectNodes()

foreach (XmlNode node in doc.SelectNodes(xPath))
{
    // Do stuff
}

結局のところ、XmlNodeList実装しIDisposableます。つまり、戻り値を反復処理するたびに、XmlDocument.SelectNodes()それをローカル変数に入れて、確実に破棄する (つまり、usingブロックに入れる) 必要があるということですか?

このような:

using(XmlNodeList nodes = doc.SelectNodes(xPath))
{ 
    foreach (XmlNode node in nodes)
    {
        // Do stuff
    }
}
4

1 に答える 1