ASP.NET MVC 3 XML序列化:从对象属性名称中序列化元素名称中的破折号?

时间:2012-06-27 05:26:02

标签: asp.net-mvc-3 c#-4.0 xml-serialization

Trulia's Dev Guide在元素名称中使用破折号。假设我创建了一个具有相似名称但带有下划线而不是破折号的对象,我是否需要使用XmlWriter创建自定义XML序列化程序以使用破折号替换下划线,或者是否有更简单的方法来执行此操作? (类似于.WriteElementString("street-address", myObject.street_address);

示例XML:

<location>
    <street-address>1234 Lane</street-address>
    <city-name>Midway</city-name>
    <state-code>GA</state-code>
    <zipcode>31320</zipcode>
    <display-address>true</display-address>
</location>

1 个答案:

答案 0 :(得分:4)

您可以在序列化POCO和反序列化XML时使用属性,如下所示:

[XmlElement("street-address")]
public string StreetAddress { get; set; }

[XmlElement("city-name")]
public string CityName { get; set; }