Generate C# class from XML
If you are working on .NET 4.5 project in VS 2012 (or newer), you can just Special Paste your XML file as classes.
- Copy your XML file's content to clipboard
- In editor, select place where you want your classes to be pasted
- From the menu, select
EDIT > Paste Special > Paste XML As Classes
Yes, by using xsd.exe
D:\temp>xsd test.xmlMicrosoft (R) Xml Schemas/DataTypes support utility[Microsoft (R) .NET Framework, Version 4.0.30319.1]Copyright (C) Microsoft Corporation. All rights reserved.Writing file 'D:\temp\test.xsd'.D:\temp>xsd test.xsd /classesMicrosoft (R) Xml Schemas/DataTypes support utility[Microsoft (R) .NET Framework, Version 4.0.30319.1]Copyright (C) Microsoft Corporation. All rights reserved.Writing file 'D:\temp\test.cs'.
Notes
Answer how to change directory in Developer Command Prompt to d:\temp may be useful.
If you generate classes for multi-dimensional array, there is a bug in XSD.exe generator, but there are workarounds.
At first I thought the Paste Special was the holy grail! But then I tried it and my hair turned white just like the Indiana Jones movie.
But now I use http://xmltocsharp.azurewebsites.net/ and now I'm as young as ever.
Here's a segment of what it generated:
namespace Xml2CSharp{ [XmlRoot(ElementName="entry")] public class Entry { [XmlElement(ElementName="hybrisEntryID")] public string HybrisEntryID { get; set; } [XmlElement(ElementName="mapicsLineSequenceNumber")] public string MapicsLineSequenceNumber { get; set; }