你有两种可能。
方法一、XSD工具
假设您的 XML 文件位于此位置
C:\path\to\xml\file.xml
- 打开开发人员命令提示符
 您可以在Start Menu > Programs > Microsoft Visual Studio 2012 > Visual Studio Tools或者如果您有 Windows 8 可以开始在开始屏幕中输入开发人员命令提示符
- 通过键入将位置更改为您的 XML 文件目录cd /D "C:\path\to\xml"
- 通过键入从您的 xml 文件创建XSD 文件xsd file.xml
- 通过键入创建C# 类xsd /c file.xsd
就是这样!您已经从 xml 文件中生成了 C# 类C:\path\to\xml\file.cs
方法 2 - 特殊粘贴
需要 Visual Studio 2012+
- 将 XML 文件的内容复制到剪贴板
- 将新的空类文件 ( Shift++ Alt)添加到您的解决C方案
- 打开该文件并在菜单中单击Edit > Paste special > Paste XML As Classes
  
就是这样!
用法
这个助手类的使用非常简单:
using System;
using System.IO;
using System.Web.Script.Serialization; // Add reference: System.Web.Extensions
using System.Xml;
using System.Xml.Serialization;
namespace Helpers
{
    internal static class ParseHelpers
    {
        private static JavaScriptSerializer json;
        private static JavaScriptSerializer JSON { get { return json ?? (json = new JavaScriptSerializer()); } }
        public static Stream ToStream(this string @this)
        {
            var stream = new MemoryStream();
            var writer = new StreamWriter(stream);
            writer.Write(@this);
            writer.Flush();
            stream.Position = 0;
            return stream;
        }
        public static T ParseXML<T>(this string @this) where T : class
        {
            var reader = XmlReader.Create(@this.Trim().ToStream(), new XmlReaderSettings() { ConformanceLevel = ConformanceLevel.Document });
            return new XmlSerializer(typeof(T)).Deserialize(reader) as T;
        }
        public static T ParseJSON<T>(this string @this) where T : class
        {
            return JSON.Deserialize<T>(@this.Trim());
        }
    }
}
你现在要做的就是:
    public class JSONRoot
    {
        public catalog catalog { get; set; }
    }
    // ...
    string xml = File.ReadAllText(@"C:\path\to\xml\file.xml");
    var catalog1 = xml.ParseXML<catalog>();
    string json = File.ReadAllText(@"C:\path\to\json\file.json");
    var catalog2 = json.ParseJSON<JSONRoot>();
这里有一些在线XML <--> JSON转换器:单击