我試圖將服務引用添加到與ASP.NET MVC 4項目駐留在同一解決方案中但失敗的WCF服務。我有一個錯誤說:添加服務引用時出錯:類型是不支持的遞歸集合數據合同
Custom tool error: Failed to generate code for the service reference 'XXX'. Please check other error and warning messages for details. The root warning is:
Warning 9 Custom tool warning: Cannot import wsdl:portType Detail: An exception was thrown while running a WSDL import extension: System.ServiceModel.Description.DataContractSerializerMessageContractImporter Error: Type 'Newtonsoft.Json.Linq.JToken' is a recursive collection data contract which is not supported. Consider modifying the definition of collection 'Newtonsoft.Json.Linq.JToken' to remove references to itself. XPath to Error Source: //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中調用庫項目,但我討厭這麼做,因爲這是一個額外的步驟。有什麼建議麼?
我的答案可能是完全關閉基地...你可以包括你的問題的數據合同? – 2012-07-18 16:49:32