天天看点

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