WCF 因没有“set”的属性而窒息。有什么解决办法吗?

2024-04-01

我有一些作为服务方法的结果传递的类,并且该类具有仅获取属性:

[DataContract]
public class ErrorBase
{
  [DataMember]
  public virtual string Message { get { return ""; } }
}

我在服务端遇到异常:

System.Runtime.Serialization.InvalidDataContractException:未设置 类型“MyNamespace.ErrorBase”中属性“Message”的方法。

我必须将此属性作为唯一的 getter,我不能允许用户为其分配值。我可以使用任何解决方法吗?或者我缺少一些额外的属性?


为 Message 提供一个公共 getter 但受保护的 setter,以便只有子类(以及 DataContractSerializer,因为它作弊:)可以修改该值。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WCF 因没有“set”的属性而窒息。有什么解决办法吗? 的相关文章

随机推荐