从动态xml转换为c#对象

前端之家收集整理的这篇文章主要介绍了从动态xml转换为c#对象前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要输入将动态xml转换为定义的c#对象模型

我的样本xml如下:

<?xml version="1.0" encoding="utf-8" ?>
  <Persons>
    <Person>
      <Id>10</Id>
      <FirstName> Dino </FirstName>
      <LastName> Esposito </LastName>
      <Addresses>
        <Address>
          <AddressType>BillTo</AddressType>
          <Street1></Street1>
          <Street2></Street2>
          <Street3></Street3>
          <City>Moscow</City>
        </Address>
        <Address>
          <AddressType>ShipTo</AddressType>
          <Street1></Street1>
          <Street2></Street2>
          <Street3></Street3>
          <City>Moscow</City>
        </Address>
        <Address>
          <AddressType>Contact</AddressType>
          <Street1></Street1>
          <Street2></Street2>
          <Street3></Street3>
          <City>Moscow</City>
        </Address>
      </Addresses>
    </Person>
  </Persons>

我希望在运行时将此xml的值转换为C#对象.
我希望定义一个类似于以下的对象:
我的预期类对象C#如下:

public class Person
{
    public int Id { get; set; }
    public String FirstName { get; set; }
    public String LastName { get; set; }
    public IList<Address> Addresses { get; set; }
}

public class Address
{
    public string AddressType { get; set; }
    public string Street1 { get; set; }
    public string Street2 { get; set; }
    public string Street3 { get; set; }
    public string City { get; set; }
}

我在C#4.0中经历了动态和ExpandoObject,这种方法允许我通过使用键动态获取值.我不知道如何将这些填充到我的数据模型中.

注意:我不想定义这个类模型结构,这会在一段时间内不断变化.我正在寻找一个解决方案,它允许我获取像DynamicObject.Addresses.Address [0] .City这样的值.

请提供您的意见.

原文链接:https://www.f2er.com/xml/292323.html

猜你在找的XML相关文章