0

我不知道为什么,但是每当我尝试添加 [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;” 所以我不确定我是否缺少任何东西来使这些属性正常工作。

4

1 回答 1

0

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

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

此链接可以提供帮助:SerializableAttribute

于 2015-05-13T20:11:11.950 回答