2012-12-12 79 views
0

林不知道爲什麼,但每當我嘗試添加[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; } 
} 

我添加數據成員到私有財產,如僱員和當我用小提琴調用get時,它不會被序列化。

我也嘗試使用[IgnoreDatamember]屬性,無論我嘗試忽略無論如何序列化。

我有「using System.Runtime.Serialization;」所以我不確定是否有什麼我失蹤,以獲得這些屬性的工作。

+1

什麼串您使用的? –

+0

默認的System.Runtime.Serialization.DataContractSerializer – Louis

+0

這真的很奇怪。你能夠在獨立的應用程序中重現這一點嗎? –

回答

0

您必須將屬性DataMember添加到要序列化的所有屬性。 如果您需要序列化的屬性添加到類:

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

這個鏈接可以幫助:SerializableAttribute