Я пытаюсь преобразовать XML-документ из одного формата в другой, и при этом я обнаружил, что мне нужно вставить несколько объявлений xmlns в корневой элемент.Мне нужно несколько элементов xmlns в элементе с XmWriter
Пример:
< версии XML = "1.0" кодирование = "UTF-8"? >
< Шаблон XMLNS = "http://tempuri.org/TemplateBase.xsd" Xmlns: ТИПЫ = "http://tempuri.org/TemplateTypes.xsd" >
некоторое содержание
< Шаблон >
Причина этого заключается в том, что я разделил схему XSD на несколько XSD, чтобы повторно использовать общие типы в этом случае.
Ну, что я хочу сделать сейчас, это написать этот xml с XmlTextWriter, но я не могу написать атрибут xmlns для TYPES.
То, что я пытался до сих пор:
XmlWriter xmlWriter = XmlWriter.Create(filename, settings);
xmlWriter.WriteStartElement("Template", "http://tempuri.org/TemplateBase.xsd");
xmlWriter.WriteAttributeString("xmlns", "TYPES", "http://tempuri.org/TemplateTypes.xsd", XmlSchema.InstanceNamespace);
Когда я выполняю этот код я получаю следующее исключение:
System.ArgumentException: Приставка «XMLNS» зарезервирован для использования XML ..
Есть ли у кого-нибудь лекарство от моей нынешней головной боли?
Спасибо Doc, что сделал трюк! – 2010-03-24 09:59:19