Длинное название, но, надеюсь, я смогу объяснить, что я хочу.Я прочитал и погуглил тонну XML-документации, но так и не получил ответа на то, что я пытаюсь сделать.Я пытаюсь создать документ XSD, который генерирует явные определения типов для полей в наборе данных.Затем я пытаюсь создать образец XML-документа, который проверяется на соответствие XSD-документу.
Это прекрасно работает в Visual Studio, потому что я могу читать в схеме и документе, и это проверяет НО, созданный документ XML не имеет реальной ссылки на XSD через xlmns или другой метод.Если я хочу использовать эти XML-данные, скажем, в MS Excel, и пытаюсь импортировать, он не знает, где проверять XSD, поэтому он принимает его на основе значений.Есть ли способ в моем коде добавить xlmns как в XSD, так и в XML, если это необходимо для решения этой проблемы?
Dim MyDataSet As New DataSet("Samples")
Dim MyDataTable As New DataTable("Sample")
MyDataSet.Tables.Add(MyDataTable)
MyDataTable.Columns.Add(New DataColumn("blnExample", GetType(Boolean), Nothing, MappingType.Element))
MyDataTable.Columns.Add(New DataColumn("datExample", GetType(DateTime), Nothing, MappingType.Element))
MyDataTable.Columns.Add(New DataColumn("decExample", GetType(Decimal), Nothing, MappingType.Element))
MyDataTable.Columns.Add(New DataColumn("dblExample", GetType(Double), Nothing, MappingType.Element))
MyDataTable.Columns.Add(New DataColumn("intExample", GetType(Integer), Nothing, MappingType.Element))
MyDataTable.Columns.Add(New DataColumn("lngExample", GetType(Long), Nothing, MappingType.Element))
MyDataTable.Columns.Add(New DataColumn("sglExample", GetType(Single), Nothing, MappingType.Element))
MyDataTable.Columns.Add(New DataColumn("strExample", GetType(String), Nothing, MappingType.Element))
' Write out the XSD
MyDataSet.WriteXmlSchema(Server.MapPath("~\xml\MySchema.xsd"))
' Put some data in the table
Dim TempRow As DataRow
For i As Integer = 1 To 3
TempRow = MyDataTable.NewRow()
TempRow("blnExample") = True
TempRow("datExample") = New DateTime(2012, 2, 29)
TempRow("decExample") = 1
TempRow("dblExample") = 2
TempRow("intExample") = 3
TempRow("lngExample") = 4
TempRow("strExample") = "Example"
MyDataTable.Rows.Add(TempRow)
Next
' Write out the data
MyDataSet.WriteXml(Server.MapPath("~\xml\MyData.xml"))