3
我有一个具有以下数据XML序列化使用的XMLElement
public partial class EHRNodesTesting {
private string fieldID;
private bool fieldRights;
private string fieldName;
[System.Xml.Serialization.XmlAttribute]
public string FieldID
{
get { return this.fieldID; }
set { this.fieldID = value; }
}
[System.Xml.Serialization.XmlAttribute]
public bool FieldRights
{
get { return this.fieldRights; }
set { this.fieldRights = value; }
}
[XmlElement("Value")]
public string FieldValue
{
get { return this.fieldName; }
set { this.fieldName = value; }
}
}
然后我填充这个使用了一组数据,我得到,所以我没有预定义的领域和序列化结果如下
一个定义的类<FieldNode>
<FieldName FieldID="LastName" FieldRights="true">
<FieldValue>Harris</FieldValue>
</FieldName>
<FieldName FieldID="FirstNameName" FieldRights="true">
<FieldValue>John</FieldValue>
</FieldName>
</FieldNode>
现在,有没有一种方式,序列化发生FieldID的价值,并用它来替换fieldName得到以下
<FieldNode>
<LastName FieldID="LastName" FieldRights="true">
<FieldValue>Harris</FieldValue>
</LastName >
<FirstName FieldID="FirstName" FieldRights="true">
<FieldValue>John</FieldValue>
</FirstName>
</FieldNode>
我可能会误解你所问的内容,但是如果你想修改节点名,'XmlNode.Name'是一个**只读**属性。考虑自己创建xml。请参阅[XDocument](http://msdn.microsoft.com/en-us/library/system.xml.linq.xdocument.aspx) – tnw 2013-03-25 18:53:44
我发现节点名称通常与某个属性或类相关,因此请考虑命名要么相应 – Sayse 2013-03-25 18:59:35
所以看起来没有办法设置一个规则来做到这一点,而不是创建自己的XML – 2013-03-25 19:04:41