2010-01-26 34 views
2

我有一個XSD文件,我想在運行時基於XSD創建一個XML文件。 (我的問題與this one基本相同,除了.NET世界,而不是Java)。以編程方式從XSD創建XML文件

我運行了xsd.exe /c /l:vb MyTest.xsd,但是它生成了一個無法實例化和使用的類,因爲它有嵌套類從未實例化。看起來,生成的類僅用於XML反序列化,但我沒有要從中反序列化的XML文件。

正在運行xsd.exe /d /l:vb MyTest.xsd會生成一個數據集,但看起來像使用這樣的代碼會比編寫手動編寫XmlDocument的代碼更多。

基於特定模式創建XML文件的最佳方式是什麼?

+0

可能的重複[是否有一個類從.NET中的XSD架構生成示例XML文檔](http://stackoverflow.com/questions/41674/is-there-a-class-to-generate-a -sample-xml-document-from-xsd-schema-in-net) – 2010-05-19 01:24:49

回答

1

原來我只是懶惰。雖然由xsd生成的類包含未初始化的嵌套類,但它們通過公共屬性公開,所以沒有任何東西阻止我自己實例化它們。

類似以下內容:

ElementA.ElementB = New ElementB() 
ElementA.ElementB.Name = "Jason" 
1

閱讀本文:http://msdn.microsoft.com/en-us/library/aa302296.aspx它包括一個安裝程序和使用XmlSampleGenerator API的示例。

+0

不知道這是否對我非常有幫助。如果我要編寫一堆代碼來解析模式,我不妨寫一堆代碼來手動創建XML文件。 – 2010-01-26 17:24:22

1

我使用提供這種作爲它的功能的一部分的XML工具(oXygen)。我確信還有其他人,這正是我們在這裏使用的。

+0

夠正確。我可以使用不同的工具。 – 2010-01-29 19:09:01