Comment générer un fichier XML à partir d'un fichier XSD ?
Réponses
Trop de publicités?Supposons que nous ayons un fichier Test.xsd qui ressemble à ceci :
<?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>
-
Créez des classes à l'aide de l'outil xsd :
xsd.exe /classes Test.xsd
Cela générera le fichier Test.cs.
Ajoutez le fichier Test.cs à votre solution.
-
Créez une instance de
MyClass
, définie dans le schéma XSD et XmlSerialize :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);
Résultat:
<?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>
il s'agit du chemin d'accès au fichier xsd.exe, assurez-vous d'avoir installé le SDK.
C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools (voici le xsd.exe (application))
voir aussi si besoin. où trouver xsd.exe dans Visual Studio 2013 sur Windows 8