DataContract属性被忽略

时间:2012-12-12 18:39:31

标签: asp.net-mvc-4 asp.net-web-api datacontract

我不确定为什么但是每当我尝试添加[DataContract]属性时,它会被忽略,如下例所示:

using System;
using System.Collections.Generic;
using System.Runtime.Serialization;


[DataContract]
public partial class Employee
{
    [DataMember]
    private int EmployeeId { get; set; }

    public string Name { get; set; }

    public string State { get; set; }
}

我将DataMember添加到私有属性(例如EmployeeId)中,当我用fiddler调用get时,它不会被序列化。

我也尝试过使用[IgnoreDatamember]属性,无论如何,我试图忽略的是序列化。

我有“使用System.Runtime.Serialization;”所以我不确定是否有任何我缺少的东西让这些属性起作用。

1 个答案:

答案 0 :(得分:0)

您必须将属性DataMember添加到要序列化的所有属性中。 如果需要序列化,请将该属性添加到类中:

[Serializable, DataContract]
public partial class Employee
{
...
}

此链接可以提供帮助:SerializableAttribute