формирование корневого тега при помощи XmlSerializer
От: voladu  
Дата: 28.11.06 06:50
Оценка:
Здравствуйте!

Необходимо сформировать заголовок файла определенным образом.
Работаю в VS2003 — VB.Net.
Необходимо (требуемый вариант):
<?xml version="1.0" encoding="windows-1251"?>
<DECLAR xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:noNamespaceSchemaLocation="schemaName.XSD">
<DECLARHEAD>
</DECLARHEAD></DECLAR>

Есть схема данных, при помощи утилиты xsd.exe создал класс.
Получилось нечто работающее:
<System.Xml.Serialization.XmlRootAttribute("DECLAR", [Namespace]:="", IsNullable:=False)> _
    Public Class DeclarContent
        <System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
        Public DECLARHEAD As DHead
    End Class

    Public Class DHead
        <System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
                Public TIN As String 
     ' etc.................
End Class

После примененния XmlSerializer, был сформирован файл следующего вида:
<?xml version="1.0" encoding="windows-1251"?>
<DECLAR xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
  <DECLARHEAD>
</DECLARHEAD></DECLAR>

Выходит , что Определение атрибутов DECLAR я никак не могу контролировать.
Посоветуйте пожалуйста каким образом можно достичь желаемого!


Грубый метод замены текста в файле держу прозапас, хотелось бы как-нибудь изящнее решить проблему.
Спасибо!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.