小编use*_*001的帖子

添加服务引用时出错:Type是不支持的递归收集数据协定

我尝试将服务引用添加到WCF服务,该服务驻留在ASP.NET MVC 4项目的同一解决方案中但失败了.我收到一个错误说:

自定义工具错误:无法为服务引用"XXX"生成代码.有关详细信息,请查看其他错误和警告消息.根警告是:

警告9自定义工具警告:无法导入wsdl:portType详细信息:运行WSDL导入扩展时抛出异常:System.ServiceModel.Description.DataContractSerializerMessageContractImporter错误:类型'Newtonsoft.Json.Linq.JToken'是递归收集数据合同,不受支持.考虑修改集合'Newtonsoft.Json.Linq.JToken'的定义以删除对它自己的引用.XPath到错误源://wsdl:definitions[@targetNamespace='http://tempuri.org/']/wsdl:portType[@name='IXXX'] C:\ Projects ...\Reference.svcmap 1 1 pqrt.web

如果我从服务合同中删除了数据合同,那就有效了.我还尝试将服务引用添加到其他项目,如库项目甚至ASP.NET MVC 3项目,这一切都有效.我想知道这是否是ASP.NET MVC 4的一个问题?我正在使用VS 2012 RC.

我能想到的一个解决方法是将服务引用添加到库项目,然后从ASP.NET MVC 4调用库项目,但我讨厌这样做,因为这是一个额外的步骤.有什么建议?

.net wcf wsdl exception-handling service-reference

15
推荐指数
3
解决办法
8285
查看次数

标签 统计

.net ×1

exception-handling ×1

service-reference ×1

wcf ×1

wsdl ×1