DataContract 问题

Philia_ 2014-08-01 02:02:54
实体类,但是不是wcf情况为什么也要加上DataContract

    
[DataContract]
[Serializable]
public class Entity
{..
}
...全文
243 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Rajesh_James 2014-08-04
  • 打赏
  • 举报
回复
DataContract 表示服务端和客户端之间要传送的自定义数据类型 Serializable 表示可被序列化的类型
Philia_ 2014-08-01
  • 打赏
  • 举报
回复
明白了,谢谢各位
moonwrite 2014-08-01
  • 打赏
  • 举报
回复
引用 4 楼 h475882792 的回复:
[quote=引用 3 楼 moonwrite 的回复:] 鼠标点击一下[DataContract] 然后按一下F1 到官方看看说明
加了Serializable为什么要加DataContract[/quote] 改变一下你的思考方式 不要思考,加了Serializable为什么要加DataContract 而是思考Serializable的意义是,表达给谁使用 DataContract的意义是,表达给谁使用
  • 打赏
  • 举报
回复
加那个不一定非要在服务中才能使用 Serializable 可用于二进制或者soap序列化 DataContract可用于Json序列化(在.Net3.0之后,webservice中不必显示标识了) 也有可能是出于后续扩展的考虑,使得以后在服务中可以直接使用这个实体类及其子类吧 http://www.cnblogs.com/nankezhishi/archive/2012/05/12/serializationcompare.html
moonwrite 2014-08-01
  • 打赏
  • 举报
回复
引用 4 楼 h475882792 的回复:
[quote=引用 3 楼 moonwrite 的回复:] 鼠标点击一下[DataContract] 然后按一下F1 到官方看看说明
加了Serializable为什么要加DataContract[/quote] [ 这东西叫特性] [Display(Name = "身份证号码")] [Required(ErrorMessage = "请填写{0}")] [RegularExpression(RegExp.Idcard, ErrorMessage = "请填写正确的{0}")] public string IdentityCard { get; set; } 因为C#的设计师觉得语言只有 public(访问) Type(类型) val(名称)其他语言一般都是这3个,能表达的内容太少了~ 所以就有了特性这个东西,给我们要定义的东西赋予更多的意思,那么 [DataContract] //Entity是一个数据契约 [Serializable] //Entity可以序列化 public class Entity 两个冲突吗~你是男人,你是中国人,你是程序员冲突吗? 标记上[DataContract]是给WCF用的 标记上[Serializable] 是可以序列化~不给WCF用~可以给序列化组件用啊
Philia_ 2014-08-01
  • 打赏
  • 举报
回复
我记得一般wcf都不用加Serializable
Philia_ 2014-08-01
  • 打赏
  • 举报
回复
引用 3 楼 moonwrite 的回复:
鼠标点击一下[DataContract] 然后按一下F1 到官方看看说明
加了Serializable为什么要加DataContract
moonwrite 2014-08-01
  • 打赏
  • 举报
回复
鼠标点击一下[DataContract] 然后按一下F1 到官方看看说明
Philia_ 2014-08-01
  • 打赏
  • 举报
回复
引用 1 楼 xxoome 的回复:
数据契约
服务契约定义了远程访问对象和可供调用的方法,我这不是wcf也不是webservice
十三- 2014-08-01
  • 打赏
  • 举报
回复

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧