- chapter1
- chapter2
- chapter3
- ...
Код: Выделить всё
while (reader.Read())
{
string name = reader.GetAttribute("name");
if (name == "chapter1")
{
// Do something
XmlReader chapter1Reader = reader.ReadSubtree();
} else if (name == "chapter2") {
// do more
XmlReader chapter2Reader = reader.ReadSubtree();
} else if (name == "chapter3") {
// do more
XmlReader chapter3Reader = reader.ReadSubtree();
} else if ...
}
Должен ли я вызывать Chapter2Reader.Dispose() или, скорее, Chapter2Reader.Skip()? Кажется, я не могу найти информацию по этому поводу, и я не уверен в экспериментах по времени, которые я пробовал...
Обратите внимание, что это вымышленный пример очень большого XML-файла. Структура моего Xml похожа: в нем есть пара узлов с глубиной 1, которые уходят очень глубоко. В этом примере я попытался упростить эту структуру.
Подробнее здесь: https://stackoverflow.com/questions/790 ... -xmlreader
Мобильная версия