【发布时间】:2015-04-22 06:33:20
【问题描述】:
我阅读了有关通过网络发送序列化对象的好处的文章。性能和尺寸成本。
一些关于 DataContract 和使用 JSON 或 XML 序列化的解释。
但是我找不到关于如果我不使用这些属性会发生什么的文章,并且假设我的对象的属性和状态是原始类型,我返回一个对象。显然,当我具体使用 DataContractJsonSerializer 之类的序列化程序及其 WriteObject 方法时,它会抛出异常。
如果我在 Web 服务方法中返回一个具有“Serializable”属性的 Employee 类型的对象,会发生什么情况。我的意思是 .net 会如何处理这个结果。
[WebMethod]
public Employee SendEmployeeData()
{
}
该对象将通过网络作为二进制流或什么发送?
是否需要序列化对象才能通过网络发送?
我还读到 DataContractSerializer 会解释 Serializable 属性。
difference between DataContract attribute and Serializable attribute in .net
【问题讨论】:
-
快速说明:使用 Json.NET,而不是 DataContractSerializer。性能无疑更好,属性标注更干净IMO。甚至微软也在 WebAPI 2 中使用 Json.NET。
-
感谢您的方法。这不是我第一次听说,我开始阅读和探索它。
标签: c# json web-services serialization serializable