WCF自定义序列化程序

rog*_*ueg 7 .net wcf serialization json

我正在WCF中创建一个返回JSON的Web服务,但是DataContractJsonSerializer正在使用一些循环引用(在这种特殊情况下我无法删除).

相反,我想使用Newtonsoft json库.在WCF中创建自定义序列化程序的最简单方法是什么?

注意:我知道我可以返回一个流,但我不希望操作代码知道序列化的东西.

Mar*_*ell 4

纯粹WCF:如果您控制线路的两端(在“完整”.NET 上),则应用自定义序列化程序相对简单 - 您添加从 继承的行为DataContractSerializerOperationBehavior,并覆盖CreateSerializer- 请参阅此处(此处包含属性)。

然而!我的理解(未经测试)是启用 JSON 的 WCF 服务不会使用此路由,而是直接应用其自己的序列化器。