我有一个定义好的类,其中包含以下数据
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。 - tnw