【发布时间】:2010-12-22 13:41:50
【问题描述】:
在我的 WCF 解决方案中,服务器不需要知道数据类型。客户端将发送一个类型并接收相同的类型。
出于性能原因,我认为我可以在客户端代理中手动实现序列化,避免在服务器端内置 WCF 序列化,但是有什么方法可以通过正确配置 WCF 来实现相同的目标?
【问题讨论】:
标签: .net wcf configuration serialization
在我的 WCF 解决方案中,服务器不需要知道数据类型。客户端将发送一个类型并接收相同的类型。
出于性能原因,我认为我可以在客户端代理中手动实现序列化,避免在服务器端内置 WCF 序列化,但是有什么方法可以通过正确配置 WCF 来实现相同的目标?
【问题讨论】:
标签: .net wcf configuration serialization
WCF 的整个基本架构是基于客户端调用服务器,发送序列化消息。
这就是 WCF 的基础——消息传递。你不能把它关掉。你可以调整它 - 但你不能删除它。
关于自定义序列化 - 查看 Aaron Skonnard 在 MSDN 杂志上的出色的 Serialization in WCF 文章。
您可以为 WCF 创建自己的自定义序列化程序 - 如果您真的想要 - 但为什么呢?
为什么您作为一个开发人员或小商店想要与微软相当庞大的团队“竞争”并再次重新发明序列化的轮子?我宁愿专注于微软无法为我解决的实际业务问题,而是让“基础设施粘合剂”成为他们的游戏——他们擅长于此,而且他们有更多的人力和资源来解决这些问题!
【讨论】:
我认为protobuf-net 自定义了序列化。如果我查看它的源代码,我可以理解如何实现我的目标
【讨论】:
只需使您来回传递给服务器的类型具有类似于 byte[] 属性的东西。然后您可以在客户端上序列化您的已知类型。服务器只需要知道不透明字节
【讨论】: