使用生成XSD文件的XML文件 [英] Generating XML file using XSD file

查看:127
本文介绍了使用生成XSD文件的XML文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你如何生成XSD文件的XML文件?


解决方案

假设我们已经Test.xsd文件看起来像这样:

 <?XML版本=1.0&GT?;
< XS:架构的xmlns:XS =htt​​p://www.w3.org/2001/XMLSchema>
  < XS:元素的名称=MyClass的>
    < XS:复杂类型>
      < XS:序列>
        < XS:元素的名称=字段1
                    类型=XS:字符串/>
        < XS:元素的名称=字段2
                    类型=XS:字符串/>
      < / XS:序列>
    < / XS:复杂类型>
  < / XS:组件>
< / XS:架构>


  1. 创建使用XSD工具类:

      XSD.EXE /班Test.xsd

    这将产生test.cs中的文件。


  2. test.cs中文件添加到您的解决方案。


  3. 创建实例 MyClass的,在XSD架构定义,它XMLSERIALIZE:

     使用的System.Xml.Serialization;
    // ...
    VAR数据=新MyClass的{字段1 =测试1,字段2 =test2的};
    VAR串行器=新的XmlSerializer(typeof运算(MyClass的));
    使用(VAR流=新的StreamWriter(C:\\\\的test.xml))
        serializer.Serialize(流数据);


结果:

 <?XML版本=1.0编码=UTF-8&GT?;
< MyClass的的xmlns:XSD =htt​​p://www.w3.org/2001/XMLSchema中的xmlns:XSI =htt​​p://www.w3.org/2001/XMLSchema-instance>
  <&字段1 GT;&TEST1 LT; /字段1>
  <&字段2 GT; test2的< /场2>
< / MyClass的>

How do you generate an XML file from an XSD file?

解决方案

Suppose we have Test.xsd file that looks like this:

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="MyClass">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Field1"
                    type="xs:string"/>
        <xs:element name="Field2"
                    type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

  1. Create classes using xsd tool:

    xsd.exe /classes Test.xsd
    

    This will generate Test.cs file.

  2. Add Test.cs file to your solution.

  3. Create instance of MyClass, defined in XSD schema and XmlSerialize it:

    using System.Xml.Serialization;
    // ...
    var data = new MyClass { Field1 = "test1", Field2 = "test2" };
    var serializer = new XmlSerializer(typeof(MyClass));
    using (var stream = new StreamWriter("C:\\test.xml"))
        serializer.Serialize(stream, data);
    

Result:

<?xml version="1.0" encoding="utf-8"?>
<MyClass xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Field1>test1</Field1>
  <Field2>test2</Field2>
</MyClass>

这篇关于使用生成XSD文件的XML文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆