c#
  • xml
  • xsd
  • xdr
  • 2012-11-30 70 views 0 likes 
    0

    我一直在縮小一段時間,但找不到任何有關Microsoft提供的在this鏈接中提供的XML模式的教程或資源。它看起來像:差異黑白MS XML模式與XSD模式

    <Schema xmlns="urn:schemas-microsoft-com:xml-data" 
        xmlns:dt="urn:schemas-microsoft-com:datatypes"> 
        <AttributeType name='studentID' dt:type='string' required='yes'/> 
        <ElementType name='name' content='textOnly'/> 
        <ElementType name='GPA' content='textOnly' dt:type='float'/> 
        <ElementType name='student' content='mixed'> 
        <attribute type='studentID'/> 
        <element type='name'/> 
        <element type='GPA'/> 
        </ElementType> 
        <ElementType name='class' content='eltOnly'> 
        <element type='student'/> 
        </ElementType> 
    </Schema> 
    

    我知道這是不是一個W3C推薦的XSD格式...我面對困難知道如何閱讀和做一個標準格式XSD出來。我也希望從它生成C#類。

    任何幫助,將不勝感激。它真的困惑了我對XML模式的理解。

    回答

    2

    這是一個XDR架構。如果您想要將該文件轉換爲安裝了.NET框架或Visual Studio SDK的Windows上的W3C XML模式,則可以使用xsd.exe命令行工具,即xsd.exe schema.xdr將創建相應的schema.xsd文件。然後,您可以在schema.xsd上應用xsd.exe以在C#或VB.NET中創建類文件,以便與System.Xml.Serialization.XmlSerializer一起使用。

    當我運行VS你的樣品2012的xsd.exe它會創建下列W3C XSD架構:

    <?xml version="1.0" encoding="utf-8"?> 
    <xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> 
        <xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"> 
        <xs:complexType> 
         <xs:choice minOccurs="0" maxOccurs="unbounded"> 
         <xs:element name="class"> 
          <xs:complexType> 
          <xs:sequence> 
           <xs:element name="student" minOccurs="0" maxOccurs="unbounded"> 
           <xs:complexType> 
            <xs:sequence> 
            <xs:element name="name" type="xs:string" minOccurs="0" msdata:Ordinal="1" /> 
            <xs:element name="GPA" type="xs:double" minOccurs="0" msdata:Ordinal="2" /> 
            </xs:sequence> 
            <xs:attribute name="studentID" type="xs:string" /> 
           </xs:complexType> 
           </xs:element> 
          </xs:sequence> 
          </xs:complexType> 
         </xs:element> 
         </xs:choice> 
        </xs:complexType> 
        </xs:element> 
    </xs:schema> 
    
    相關問題