Как выписать EntiteReference (например, и NBSP;) к XMLWerier, прочитайте XMLNodereader?

StackOverflow https://stackoverflow.com/questions/4056181

Вопрос

Фон
Я читаю и пишу документ XML, используя Reader и Writer, с помощью логики фильтрации между операциями по чтению и записи, чтобы определить, какие детали чтения должны быть записаны (эффективно, это порывает некоторые теги) ...

Мой выбор реализации в настоящее время является следующим использованием: Xmlnodereader, Xmlwriter. и Xmlnodetype.

using System.Xml;

// Read every node
using (XmlNodeReader reader = new XmlNodeReader(xmlFragment)) {

    // But write out only nodes I want
    using (XmlWriter writer = XmlTextWriter.Create(sb, writerSettings)) {

        while (reader.Read()) {

            //... with filtering logic here to choose what is to be written.

            //  I do want to write out all entity references
            if (XmlNodeType.EntityReference == reader.NodeType)
                ; // but how do I do that here?
        }
    }
}

Проблема
Когда я столкнулся с ссылкой на объект с читателем, я получаю пустую строку «» в reader.Value Однако это действительно   значение в источнике XML, которое было обнаружено. Так что это обнаружено, но не доступно для меня.

Видимо специальность или край:
Я нашел следующее Статья MSDN, которая указывает на ссылки на объекты, несколько особенные, одновременно, Но я не смог использовать его к рабочему решению. Подробно кажется редким - я бы предпочел, что будет образец кода, чтобы дополнить его.

Это было полезно?

Решение

Вы можете ссылаться на эту ссылку: http://msdn.microsoft.com/en-us/library/system.xml.xmlReader.name.aspx.

Надеюсь это поможет!!

Xmlreader.name.name. Свойство
При переопределении в полученном классе получает квалифицированное имя текущего узла.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top