WCF中实体类属性各个标记所作的序列化处理

Posted 森大科技

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WCF中实体类属性各个标记所作的序列化处理相关的知识,希望对你有一定的参考价值。

GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
http://cnsendnet.taobao.com
来自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=606

 

总结一下吧,WCF中应用各个标记时所作的序列化处理:
1. 不给任何标记将会做XML映射,所有公有属性/字段都会被序列化
2. [Serializable]标记会将所有可读写字段序列化(结验证,只读字段也可以序列化  edit by sand)
3. [DataContract]和[DataMember]联合使用来标记被序列化的字段,如果类加了[DataContract]标记,没加[DataMember]的属性,无法使用Newtonsoft.Json序列化。

 

 

 

.net4.0中,wcf的数据契约上可以不用写DataContract和DataMember标签了么? 

我刚才要写一个wcf服务,数据契约上忘记写DataContract和DataMember标签了。
可是wcf却联通了?

怎么解释呢? 

 

 

回复于: 2013-08-27 13:57:21

发布出去就有问题了,客户端数据传不到服务端去

 

回复于: 2013-09-05 14:59:29

不是不用加这些标记,而是 WCF里有新契约推断的功能,不过为了程序的统一严谨 还是加上DataContract DataMember的好。

 

问题:WCF中,实体类不加[DataContract]不知道会不会有影响

答案是会有影响,报如下错,不知道啥意思

 

GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
http://cnsendnet.taobao.com
来自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=606

以上是关于WCF中实体类属性各个标记所作的序列化处理的主要内容,如果未能解决你的问题,请参考以下文章

契约类相关的序列化与反序列化

如何在 WCF 中将接口标记为 DataContract

WCF 数据服务,序列化实体框架部分类的附加属性

怎么通过反射获得实体类中List类型的对象的各个属性?

实体类的理解

jackson 实体转json 为NULL或者为空不参加序列化