繁体   English   中英

如何在Windows Phone 7中使用DataContract反序列化XML属性

[英]How to deserialize XML attribute using DataContract in Windows Phone 7

我有一个带有这样的节点的XML文档。

<channel id="3102" platform = "1" activation="30/11/2010" desactivation="">

我想使用DataContract和Data Member属性对其进行反序列化,这两个属性与其属性的关系很好,但并未对属性进行反序列化。

[DataContract(Namespace="")]
[XmlSerializerFormat]    
public abstract class Channel
{
    #region variables privadas

        [DataContract(Namespace="")]
[XmlSerializerFormat]    
//[KnownType(typeof(AudioChannel))]
//[KnownType(typeof(VideoChannel))]
public abstract class Channel
{
    #region variables privadas

    private DateTime _desactivation;
    private DateTime _activation;
    private int _platform;
    private int _id;
    ....
    #endregion

    #region Propiedades públicas

    [DataMember]
    [XmlAttribute(AttributeName="desactivation")]
    public DateTime Desactivation
    {
        get { return _desactivation; }
        set { _desactivation = value; }
    }

    [DataMember]
    [XmlAttribute(AttributeName="activation")]
    public DateTime Activation
    {
        get { return _activation; }
        set { _activation = value; }
    }

    [DataMember]
    [XmlAttribute(AttributeName="platform")]
    public int Platform
    {
        get { return _platform; }
        set { _platform = value; }
    }
    #endregion

    #region Propiedades públicas

    [DataMember]
    [XmlAttribute(AttributeName="desactivation")]
    public DateTime Desactivation
    {
        get { return _desactivation; }
        set { _desactivation = value; }
    }

    [DataMember]
    [XmlAttribute(AttributeName="activation")]
    public DateTime Activation
    {
        get { return _activation; }
        set { _activation = value; }
    }

    [DataMember]
    [XmlAttribute(AttributeName="platform")]
    public int Platform
    {
        get { return _platform; }
        set { _platform = value; }
    } ...

与这些属性关联的属性未填充,我在做​​什么错?

在此先感谢您提供的任何帮助。

重复的问题。 如何控制.NET DataContract序列化,使其使用XML属性而不是元素? 您无法使用DataContractSerializer做到这一点,但是您应该使用XmlSerializer达到您的要求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM