【问题标题】:How can i add an attribute into a variable in c# xml serialization?如何在 c# xml 序列化中将属性添加到变量中?
【发布时间】:2019-08-27 16:00:52
【问题描述】:

我是 C# 中 XML 序列化的新手。我想序列化我的Dependency 对象实例,使其看起来像这样:

<Dependency Software="Some software">some value</Dependency>

我试过了:

public class Dependency{
    [XmlAttribute("Software")]
    public string soft;
    public string value;
}

但是,输出如下所示,这不是我想要的:

<Dependency Software="Some Software">
 <value>some value</value>
</Dependency>

有什么方法可以达到我想要的输出吗?

【问题讨论】:

    标签: c# xml serialization


    【解决方案1】:

    如果您不告诉序列化程序,公共属性的值将出现在具有属性名称的元素中。

    要得到你想要的输出,你需要用XmlText属性来装饰它,例如:

    public class Dependency
    {
        [XmlAttribute("Software")]
        public string soft;
        [XmlText]
        public string value;
    }
    

    然后属性值将显示为父类元素的值 - 在本例中为 Dependency

    【讨论】:

      猜你喜欢
      • 2010-11-03
      • 1970-01-01
      • 1970-01-01
      • 2010-11-06
      • 1970-01-01
      • 1970-01-01
      • 2014-04-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多