2014-06-06 16 views
9

Ich habe eine ASP.net MVC-Anwendung, die portable Klassenbibliotheken verwendet, die von einer Xamarin-Anwendung freigegeben werden. Wenn meine Web-Anwendung jetzt beginnt, wirft es diesen Fehler:Methode nicht gefunden: 'Nein Newtonsoft.Json.Serialization.DefaultContractResolver.set_IgnoreSerializableAttribute (Boolean)'

Method not found: 'Void Newtonsoft.Json.Serialization.DefaultContractResolver.set_IgnoreSerializableAttribute(Boolean)'. 

ich die Struktur Map MVC nuget Paket verwenden und es funktioniert gut, bis ich die PCL-Bibliothek verwiesen.

Es Fehler auf dieser Codezeile:

GlobalConfiguration.Configuration.DependencyResolver = new StructureMapDependencyResolver(container); 

Ich denke, es hat etwas mit der PCL-Klasse und der MVC beide mit Verweis auf JSON.net zu tun. Irgendwelche Ideen, wie das zu beheben ist? Ich habe meine Maschine neu aufgebaut, um sicherzustellen, dass nur diese Version im GAC war und nirgendwo sonst.

Irgendwelche Ideen

+0

Gleiches Problem. Ich bin in der Lage, meine Website in IISExpress zu starten, aber sobald ich mein Android-Projekt debuggen scheint es die DLL oder etwas ähnliches zu überschreiben, und ich bekomme diesen Fehler. – Guillaume

+1

Ich treffe genau dieses Problem. Es ist nicht wirklich eine Dip der vorgeschlagenen Frage; der Unterschied ist, dass dieser von der erwähnten PCL-Bibliothek OP verursacht wird. Da ich diese Frage nicht beantworten kann (jetzt, da sie als dup markiert ist), habe ich eine andere Frage gestellt und beantwortet (http://stackoverflow.com/questions/27812705/method-not-found-void-netwetsoft-). json-serialisierung-defaultcontractresolver-se/27812706 # 27812706) – dbruning

+0

Ja @dbruning das ist kein Duplikat. – MemeDeveloper

Antwort

32

Ich hatte das gleiche Problem beim Ausführen der Übungsdateien von Scott Allens großen Pluralsight-Kurs über MVC4-Grundlagen. Die Aktualisierung von Newtonsoft.Json mit dem Prerelease-Switch funktionierte nicht für mich. Sie müssen die WebApi-Pakete neu installieren. Verwenden Sie die folgenden Befehle in der Paket-Manager-Konsole:

uninstall-package Microsoft.AspNet.WebApi 
uninstall-package Microsoft.AspNet.WebApi.webhost 
uninstall-package Microsoft.AspNet.WebApi.core 
uninstall-package Microsoft.AspNet.WebApi.Client 
uninstall-package Newtonsoft.Json 

install-package Microsoft.AspNet.WebApi 

Ich dachte zuerst, dass Microsoft.AspNet.WebApi Deinstallation auch um die Deinstallation Webhost, entkernen und Client übernehmen würde - aber das hat nicht funktioniert. Das erneute Installieren von Microsoft.AspNet.WebApi stellt dann jedoch die richtige Version von Newtonsoft.Json als eine abhängige Assembly bereit.

Danach hat es perfekt funktioniert.

Hoffe, das hilft.

+1

dies funktionierte für mich, ich glaube, dieses problem, das mich und mein team betroffen hat, war mit windows update verbunden. – JGilmartin

+5

Arbeitete für meine alte MVC4-Anwendung mit Änderung der letzten Zeile zu 'install-package Microsoft.AspNet.WebApi -Version 4.0.30506' –

7

hatte ich das gleiche Problem und schließlich durch

Update-Package Newtonsoft.Json –IncludePrerelease 

in Package Manager-Konsole ausgeführt wird aufgelöst.

Es stellte sich heraus, alle meine Projekte sind auf dem neuesten Release, aber nach Clean/ReBuild Probleme sind gelöst.

+0

Ja, ich dachte, das würde funktionieren, aber es hat nicht funktioniert. – Jonathan

+0

Dies funktionierte für mich (ich baute mit VS2015 eine Lösung für VS2010). – Andrew

+0

Danke, es hat mein Problem behoben !! –

Verwandte Themen