天天看點

xsd工具運用

XML   架構定義工具從   XDR、XML   和   XSD   檔案或者從運作庫程式集中的類生成   XML   架構或公共語言運作庫類。    

xsd   file.xdr   [/outputdir:directory]   

  xsd   file.xml   [/outputdir:directory]   

  xsd   file.xsd   {/classes   |   /dataset}   [/element:element]   

                            [/language:language]   [/namespace:namespace]   

                            [/outputdir:directory]   [URI:uri]   

  xsd   {file.dll   |   file.exe}   [/outputdir:directory]   [/type:typename   [...]]      

  參數   說明    

  file.extension   要轉換的輸入檔案。必須将   extension   指定為下列之一:.xdr、.xml、.xsd、.dll   或者   .exe。    

  如果指定一個   XDR   架構檔案(.xdr   擴充名),則   Xsd.exe   将   XDR   架構轉換為   XSD   架構。輸出檔案與   XDR   架構同名,但擴充名為   .xsd。  

  如果指定一個   XML   檔案(.xml   擴充名),則   Xsd.exe   從檔案中的資料推導出架構并産生一個   XSD   架構。輸出檔案與   XML   檔案同名,但擴充名為   .xsd。  

  如果指定一個   XML   架構檔案(.xsd   擴充名),則   Xsd.exe   将為對應于   XML   架構的運作庫對象生成源代碼。    

  如果指定一個運作庫程式集檔案(.exe   或   .dll   擴充名),則   Xsd.exe   為該程式集中的一個或多個類型生成架構。可以使用   /type   選項來指定為其生成架構的類型。輸出架構被命名為   schema0.xsd、schema1.xsd,依此類推。Xsd.exe   隻有在給定類型使用   XMLRoot   自定義屬性指定命名空間時才産生多架構。    

  正常選項  

  選項   說明    

  /h[elp]   顯示此工具的指令文法和選項。    

  /o[utputdir]:directory   指定輸出檔案的目錄。此參數隻能出現一次。預設為目前目錄。    

  /?   顯示此工具的指令文法和選項。    

  XSD   檔案選項  

  必須為   xsd   檔案僅指定下列選項中的一個。  

  選項   說明    

  /c[lasses]   生成與指定架構相對應的類。若要将   XML   資料讀入對象,請使用   System.XML.Serialization.XMLSerializer.Deserializer   方法。    

  /d[ataset]   生成一個從   DataSet   派生的類,該類與指定的架構相對應。若要将   XML   資料讀入派生類,請使用   System.Data.DataSet.ReadXml   方法。    

  還可以為   .xsd   檔案指定下列任何選項。  

  選項   說明    

  /e[lement]:element   指定架構中要為其生成代碼的元素。預設情況下,鍵入所有元素。可以多次指定該參數。      

  /l[anguage]:language   指定要使用的程式設計語言。從   CS(預設)、VB   或者   JS   中選擇。還可以為實作   System.CodeDom.Compiler.CodeDomProvider   的類指定完全限定名。    

  /n[amespace]:namespace   為生成的類型指定運作庫命名空間。預設命名空間為   Schemas。    

  /u[ri]:uri   為架構中要為其生成代碼的元素指定   URI。該   URI(如果存在)應用于使用   /element   選項指定的所有元素。    

  DLL   和   EXE   檔案選項  

  選項   說明    

  /t[ype]:typename   指定要為其建立架構的類型的名稱。可以指定多個類型參數。如果   typename   不指定一個命名空間,則   Xsd.exe   将程式集中的所有類型與指定類型相比對。如果   typename   指定一個命名空間,則僅比對那個類型。如果   typename   以星号字元   (*)   結尾,則此工具比對所有以   *   前的字元串開頭的類型。如果省略   /type   選項,則   Xsd.exe   為程式集中的所有類型生成架構。    

  備注  

  Xsd.exe   執行下列操作:    

  XDR   到   XSD    

  使用精簡   XML   資料架構檔案生成   XML   架構。XDR   為早期基于   XML   的架構格式。    

  XML   到   XSD    

  使用   XML   檔案生成   XML   架構。    

  XSD   到   DataSet    

  使用   XSD   架構檔案生成公共語言運作庫   DataSet   類。生成的類為規則   XML   資料提供複雜對象模型。    

  XSD   到類    

  使用   XSD   架構檔案生成運作庫類。生成的類可以和   System.XML.Serialization.XMLSerializer   一起使用以讀取和編寫遵循架構的   XML   代碼。    

  類到   XSD    

  使用運作庫程式集檔案中的一個或多個類型生成   XML   架構。生成的架構定義由   System.XML.Serialization.XMLSerializer   使用的   XML   格式。    

  Xsd.exe   隻允許操作遵循由   WWW   聯合會   (W3C)   提議的   XML   架構定義   (XSD)   語言的   XML   架構。有關   XML   架構定義提議或   XML   标準的更多資訊,請參閱   http://w3c.org。  

  示例  

  下面的指令從   myFile.xdr   生成一個   XML   架構并将它儲存到目前目錄中。  

xsd   myFile.xdr      

  下面的指令從   myFile.xml   生成一個   XML   架構并将它儲存到指定目錄中。  

  xsd   myFile.xml   /outputdir:myOutputDir  

  下面的指令生成一個與   C#   語言中的指定架構相對應的   DataSet,并在目前目錄中将其儲存為   XSDSchemaFile.cs。  

xsd   /dataset   /language:C#   XSDSchemaFile.xsd      

  下面的指令為程式集   myAssembly.dll   中的所有類型生成   XML   架構,并在目前目錄中将它們儲存為   schema0.xsd。  

xsd   myAssembly.dll