Is it so that svcutil tool is recommended over xsd tool? I didn't see that as a confirmed statement, but it did seem so. The reason that I am confused over this is that I generated a class using both the tools. But, I got a better class using xsd. The XSD schema consists of DataContracts only.
I used the following command for svcutil:
svcutil path-to\xyz.xsd /language:C# /dataContractOnly /importxmltypes /out:path-to\class.cs
This generated the desired classes. But, it contained only XmlNode[] objects for the fields.
Then, I used the following command for xsd:
xsd.exe /c path-to\xyz.xsd /out:path-to\class.cs
It generated much better classes than svcutil did. Most of the fields were converted as desired.
Should I have any reason to believe that I should use svcutil over xsd then?
The XML Schema Definition (Xsd.exe) tool generates XML schema or common language runtime classes from XDR, XML, and XSD files, or from classes in a runtime assembly.
You can find you xsd.exe in the following location (depending upon . net version installed on your pc): C:\Program Files (x86)\Microsoft SDKs\Windows\v10.
XSD is a schema language; you use it to define the possible structure and contents of an XML format. A validating parser can then check whether an XML instance document conforms to an XSD schema or a set of schemas.
As far as I know, there are some limitations with XSD.exe; for instance when there is a Dictionary<,>
in the class, XSD.exe can not generate a proper XSD; as Dictionary
does not implement IXmlSerializable
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With