加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

从动态xml转换为c#对象

发布时间:2020-12-16 07:44:13 所属栏目:百科 来源:网络整理
导读:我需要输入将动态xml转换为定义的c#对象模型 我的样本xml如下: ?xml version="1.0" encoding="utf-8" ? Persons Person Id10/Id FirstName Dino /FirstName LastName Esposito /LastName Addresses Address AddressTypeBillTo/AddressType Street1/Street1
我需要输入将动态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这样的值.

请提供您的意见.

我建议你阅读这篇文章: http://www.codeproject.com/Articles/62839/Adventures-with-C-4-0-dynamic-ExpandoObject-Elasti.有一种方法可以从XML构建动态对象.
或者这篇文章: http://www.codeproject.com/Articles/461677/Creating-a-dynamic-object-from-XML-using-ExpandoOb.随心所欲,您可以根据需要自定义代码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读