您的位置:首页 > 其它

wcf 数值类型赋值不能的问题解决

2015-12-25 15:56 316 查看
客户端给对象int类型赋值,服务端收到值为0

网上给出的方案

1.数值型字段+isrequired属性。能解决问题,但没有说明原因。数值型默认不赋值,不科学。

2.emitdefaultvalue。没试过个人感觉也不科学。

自己摸索出的方案

1.字段赋值/字段isspecified=true。能解决问题,但也不科学。

最后发现

引用服务时,高级设置里如果取消勾选“重新使用引用程序集中的类型” ,则客户端生成的引用代码将不含 System.Runtime.Serialization.IExtensibleDataObject接口,

然后所有值类型赋值系统没法感应到,必须手工如上述两条方案在服务端或客户端强调一下有赋值。

强调一下,网上大部分说法关于原理的解释都是错的,但是很多都包含了正确的因素。特别是以下这篇文章
http://www.cnblogs.com/CharlesLiu/archive/2010/02/09/1666605.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: