我的一個程序的工作是從一個XML文件中讀取客戶名單,並將其反序列化到C#類象下面這樣:XML反序列化:不同的XML架構映射到相同的C#類
<?xml version="1.0" encoding="utf-8"?>
<customers>
<customer>
<name>john</name>
<id>1</id>
</customer>
<customer>
<name>mike</name>
<id>2</id>
</customer>
</customers>
C#類:
[XmlRoot("customers")]
public class CustomerList {
[XmlElement("customer")]
public Customer[] Customers { get; set; }
}
public class Customer {
[XmlElement("name")]
public String Name {get; set;}
[XmlElement("id")]
public String Id {get; set;}
}
但最近客戶要標記名稱從<id>
改變<code>
像下面這樣:
<?xml version="1.0" encoding="utf-8"?>
<customers>
<customer>
<name>john</name>
<code>1</code>
</customer>
<customer>
<name>mike</name>
<code>2</code>
</customer>
</customers>
'code'的值與之前的標籤'id'具有相同的含義。他們希望在轉換過程中應該修改程序,以便在一段時間內識別兩個標籤。
有沒有簡單的方法來實現這一點?謝謝。
+1:好問題! – Matt 2013-03-15 05:08:53