我想编写一个通用的方法来使用 C# 创建 xml 文件。
假设我的 XML 骨架如下所示
<root>
<customer>
<mobile></mobile>
<email></email>
<external></external>
<firstname></firstname>
<lastname></lastname>
<gender></gender>
<registered></registered>
<custom>
<field>
<name></name>
<value></value>
</field>
<field>
<name></name>
<value></value>
</field>
</custom>
</customer>
</root>
如果我将传递一个包含所有必需值的对象,我的方法应该返回一个带有值的 xml。
请注意:- 我的 xml 结构将来可以随时更改。
目前,我已经为创建不同的 XML 文件创建了单独的方法。因此,每当 xml 发生任何更改时,我都必须对方法进行更改并再次部署它。
编辑 :
我的客户类别如下
class Customer
{
public string CustomerNumber { get; set; }
public string Title { get; set; }
public string county { get; set; }
public string firstname { get; set; }
public string lastname { get; set; }
public string companyname { get; set; }
public string AddressOne { get; set; }
public string AddressTwo { get; set; }
public string AddressThree { get; set; }
public string city { get; set; }
public string postcode { get; set; }
public string country { get; set; }
public string email { get; set; }
public string RegisteredStore { get; set; }
public string mailable { get; set; }
public string rentable { get; set; }
public string emailable { get; set; }
public string JoinDate { get; set; }
public string CustomerExternalID { get; set; }
public string customergender { get; set; }
public string dateofbirth { get; set; }
public string homenumber { get; set; }
public string Mobile { get; set; }
//Custom Fields
public string CurrencyRef { get; set; }
public string InvitationStatus { get; set; }
public string LastMailDate { get; set; }
public string LastOrderDate { get; set; }
public string NearestShop { get; set; }
public string NearestShopDistance { get; set; }
public string Region { get; set; }
public string ShopperType { get; set; }
}
使用 XElement 我正在为客户创建 xml,但是当在自定义字段中添加任何新字段时,我必须更改代码以获得所需的 xml 输出。