2011-11-22 34 views
1

我在DataContract類中有兩個公共屬性。當WCF DataMember不是必需的

我想在客戶端使用它。但我不想通過服務返回。我不需要MyDateString的DataMember屬性嗎?

[DataMember] 
    public DateTime MyDate { get; set; } 

    public string MyDateString 
    { 
     get 
     { 
      return MyDate.ToString("dd/MM/yyyy"); 
     } 
    } 

回答

4

只有您想序列化的成員需要[DataMember]。由於MyDateString將按預期運行而不被序列化(MyDateString所依賴的支持屬性MyDate是,已經序列化了),因此您不需要該屬性。

11

如果您希望在服務範圍內正確序列化,您需要使用DataMember對其進行修飾。

如果您希望將其用於服務的內部邏輯,並且您不希望在從服務返回此類時該值可用,則不應使用DataMember屬性修飾它。