Błąd podczas dodawania odwołania do usługi: Typ jest umową rekurencyjną gromadzenia danych, która nie jest obsługiwana

Próbowałem dodać odwołanie do usługi do usługi WCF, która znajduje się w tym samym rozwiązaniu z projektu ASP.NET MVC 4, ale nie powiodła się. Dostałem błąd mówiący:

Błąd narzędzia niestandardowego: nie udało się wygenerować kodu odwołania do usługi „XXX”. Sprawdź inne komunikaty o błędach i ostrzeżenia, aby uzyskać szczegółowe informacje. Ostrzeżenie główne to:

Ostrzeżenie 9 Ostrzeżenie o niestandardowym narzędziu: Nie można zaimportować szczegółu wsdl: portType: Wystąpił wyjątek podczas uruchamiania rozszerzenia importu WSDL: Błąd System.ServiceModel.Description.DataContractSerializerMessageContractImporter: Typ „Newtonsoft.Json.Linq.JToken” jest rekurencyjną umową dotyczącą gromadzenia danych, która nie jest wspierany. Rozważ modyfikację definicji kolekcji „Newtonsoft.Json.Linq.JToken”, aby usunąć odniesienia do siebie. XPath to Error Źródło: //wsdl:definitions[@targetNamespace='http://tempuri.org/']/wsdl:portType[@name='IXXX '] C: Projekty ... Reference.svcmap 1 1 pqrt.web

Jeśli usunąłem umowy na dane z umowy o świadczenie usług, zadziałało. Próbowałem też dodać odwołanie do usługi do innych projektów, takich jak projekt biblioteki lub nawet projekt ASP.NET MVC 3, wszystko działało. Zastanawiałem się, czy to był problem z ASP.NET MVC 4? Używałem VS 2012 RC.

Jednym z obejść, o którym myślę, jest dodanie odwołania do usługi do projektu biblioteki, a następnie wywołanie projektu biblioteki z ASP.NET MVC 4, ale nienawidzę tego robić, ponieważ jest to dodatkowy krok. Jakieś sugestie?

questionAnswers(4)

yourAnswerToTheQuestion