在.NET中序列化XML而不是JSON

在.NET中序列化XML而不是JSON,.net,xml-serialization,.net,Xml Serialization,有没有一种方法可以使用XML数据而不是JSON来填充类 我希望所有内容都尽可能接近该代码,但输入是xml文件而不是json。您可以使用: 公共类Foo { 公共字符串条{get;set;} } 班级计划 { 公共静态void Main() { var serializer=newxmlserializer(typeof(Foo)); var xml=“啤酒”; 使用(var reader=newstringreader(xml)) { var foo=(foo)序列化程序。反序列化(读取器);

有没有一种方法可以使用XML数据而不是JSON来填充类

我希望所有内容都尽可能接近该代码,但输入是xml文件而不是json。

您可以使用:

公共类Foo
{
公共字符串条{get;set;}
}
班级计划
{
公共静态void Main()
{
var serializer=newxmlserializer(typeof(Foo));
var xml=“啤酒”;
使用(var reader=newstringreader(xml))
{
var foo=(foo)序列化程序。反序列化(读取器);
控制台写入线(foo.Bar);
}
}
}
您可以使用:

公共类Foo
{
公共字符串条{get;set;}
}
班级计划
{
公共静态void Main()
{
var serializer=newxmlserializer(typeof(Foo));
var xml=“啤酒”;
使用(var reader=newstringreader(xml))
{
var foo=(foo)序列化程序。反序列化(读取器);
控制台写入线(foo.Bar);
}
}
}

看起来不错。上次看序列化代码时,我不得不在类中放入大量属性。XmlSerializer不是这样吗?这将取决于您尝试将哪个类序列化/反序列化为什么XML结构,但可能需要yes属性。没有魔法。如果XML结构与您的对象结构不匹配,您需要指示序列化程序如何处理它。这正是我想听到的。看起来不错。上次看序列化代码时,我不得不在类中放入大量属性。XmlSerializer不是这样吗?这将取决于您尝试将哪个类序列化/反序列化为什么XML结构,但可能需要yes属性。没有魔法。如果XML结构与您的对象结构不匹配,您需要指示序列化程序如何处理它。这正是我想听到的
public class Foo
{
    public string Bar { get; set; }
}

class Program
{
    public static void Main()
    {
        var serializer = new XmlSerializer(typeof(Foo));
        var xml = "<Foo><Bar>beer</Bar></Foo>";
        using (var reader = new StringReader(xml))
        {
            var foo = (Foo)serializer.Deserialize(reader);
            Console.WriteLine(foo.Bar);
        }
    }
}