Длинное название, но, надеюсь, я смогу объяснить, что мне нужно. Я прочитал и искал в Google тонну xml-документации, но так и не получил ответа на то, что я пытаюсь сделать. Я пытаюсь создать документ XSD, который генерирует явные определения типов для полей в наборе данных. Затем я пытаюсь создать образец XML-документа, который будет соответствовать документу XSD.
Это отлично работает внутри визуальной студии, потому что я могу читать схему и документ, и он проверяет НО, созданный 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"))