我的DataContract类中有两个公共属性。
我想在客户端使用它。但我不想通过服务返回这个。我不需要MyDateString的DataMember属性吗?
[DataMember]
public DateTime MyDate { get; set; }
public string MyDateString
{
get
{
return MyDate.ToString("dd/MM/yyyy");
}
}
答案 0 :(得分:11)
如果要在服务边界上正确序列化,则需要使用DataMember进行装饰。
如果您希望将其用于服务的内部逻辑,并且您不希望在从服务返回此类时该值可用,则不应使用DataMember属性对其进行装饰。
答案 1 :(得分:4)
仅对要序列化的成员需要[DataMember]
。由于MyDateString
将按预期运行而不进行序列化(MyDateString所依赖的后备属性MyDate,已经已序列化),因此您不需要该属性。