【发布时间】:2016-08-12 19:11:55
【问题描述】:
我创建了一个在 Winforms UI 中引用的 WCF Web 服务,并且两个项目都引用了一个带有 POCO 的公共类库。
服务引用配置为重用类型,并且一切正常,直到我将其中一个 POCO 中的属性设置器设为私有。当将该 POCO 作为参数从客户端传递到服务器时,该属性变为 null,即使它在客户端上不是 null。
作为一种解决方法,我必须在该特定 POCO 上显式声明 [DataContract] 和 [DataMember] 属性以使该属性再次工作。 (其他 POCO - 都具有公共 getter 和 setter - 不需要任何属性)。
有谁知道:
1) 为什么会发生这种情况(即这是一个错误还是记录在案的行为,如果是,原因是什么)?
和
2) 是否有比使用属性装饰类更简单的解决方法(例如服务上的某些设置等)?
【问题讨论】:
标签: c# web-services wcf