Как изменить или унаследовать пространство имен по умолчанию при настройке InnerXmlC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как изменить или унаследовать пространство имен по умолчанию при настройке InnerXml

Сообщение Anonymous »

При настройке InnerXml XmlElement, имеющего пространство имен по умолчанию, все теги без явных пространств имен анализируются так, как если бы они имели xmlns="", вместо того, чтобы наследовать пространство имен по умолчанию для этого XmlElement (что происходит при анализе реального XML-документа).
Мой вопрос: как анализировать сложный XML строку как фрагмент документа и назначить ее XmlElement и наследовать префиксы пространства имен целевого XmlElement, пространство имен по умолчанию и т. д. при анализе этой строки?
Отказ от ответственности:
  • Я полностью осведомлен о том, что такое пространства имен XML и каково точное поведение XmlElement.InnerXml в отношении Пространства имен XML. Я не спрашиваю, почему XmlElement.InnerXml делает то, что делает сейчас, и является ли такое поведение хорошим или плохим. Я спрашиваю, могу ли я изменить это поведение или использовать какие-то другие методы для достижения того, что я описал выше.
  • Я реализую некую систему шаблонов XML, которая позволяет пользователям вставьте несколько довольно сложных строк XML в качестве фрагментов в другой документ XML. Было бы безумием требовать от пользователей всегда использовать явные пространства имен (накладные расходы на написание избыточных объявлений пространств имен могут легко свести на нет преимущества шаблонизации). Мне нужен метод, который анализировал бы их и вставлял полученные фрагменты в основной документ, как будто они буквально скопированы и вставлены в целевой документ.
  • Я' Я знаю, что можно сохранить пространства имен по умолчанию с помощью чистых операций DOM (например, XmlDocument.CreateElement), но Я не хочу вручную реализовывать анализатор XML и преобразовывать строки XML в операции DOM.
  • Я также не хочу «сериализовать весь XML-документ, манипулировать строками и анализировать его». назад».
Возможно ли это?

Подробнее здесь: https://stackoverflow.com/questions/727 ... g-innerxml
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»