C# - 具有属性和节点值的 Xml 元素
Posted
技术标签:
【中文标题】C# - 具有属性和节点值的 Xml 元素【英文标题】:C# - Xml Element with attribute and node value 【发布时间】:2011-10-05 12:18:03 【问题描述】:我有一些需要反序列化为对象的 XML。 Xml 是:
<Person>
<Type id="1234">Bob</Type>
</Person>
类是:
public class Person public Type Type;
public class Type
[XmlAttribute("id")]
public string id;
// another property for value "Bob" here, such as:
public string value; // ????
我想使用XmlSerializer.Deserialize
将这个 Xml 反序列化为上面的具体对象(避免使用 XPath 等)
我可以用什么 Xml 属性来装饰“Type”类,这样我不仅有一个“id”属性而且还有一个值(“Bob”)?
【问题讨论】:
值"Bob"
在C#中存储在哪里?
仅此而已.. 现在不是。我需要知道如何在对象中表示它,以及用哪个 XmlAttribute(如果有)来标记它。
您确实需要将Type
重命名为PersonType
或其他名称,因为它与System.Type
冲突
是的,当然。 'Person' 只是一个示例类。
【参考方案1】:
您必须添加类似的属性
[XmlText]
public string Text;
【讨论】:
以上是关于C# - 具有属性和节点值的 Xml 元素的主要内容,如果未能解决你的问题,请参考以下文章
XSLT:XML 第一个属性需要转换为具有第二个属性值的元素
使用 xslt 2.0 合并具有相同父属性值的元素的 xml 内容