找不到方法:’Void Newtonsoft.Json.Serialization.DefaultContractResolver.set_IgnoreSerializableAttribute(Boolean)’
我有一个ASP.net MVC应用程序,它使用由xamarin应用程序共享的可移植类库。 当我的Web应用程序立即启动时,它会抛出此错误:
Method not found: 'Void Newtonsoft.Json.Serialization.DefaultContractResolver.set_IgnoreSerializableAttribute(Boolean)'.
我正在使用Structure Map MVC nuget包,它工作正常,直到我引用了PCL库。
它在这行代码中出错:
GlobalConfiguration.Configuration.DependencyResolver = new StructureMapDependencyResolver(container);
我认为它与PCL类和MVC有关,它们都引用了JSON.net。 有想法该怎么解决这个吗? 我最终重建了我的机器,以确保只有这个版本在GAC中,而不是在其他地方。
有任何想法吗
在运行Scott Allen关于MVC4基础知识的伟大的Pluralsight课程的练习文件时,我遇到了同样的问题。 使用预发布开关更新Newtonsoft.Json对我来说不起作用。 您必须重新安装WebApi包。 在程序包管理器控制台中使用以下命令:
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
我首先想到,卸载Microsoft.AspNet.WebApi也会负责卸载webhost,核心和客户端 – 但这不起作用。 然而,重新安装Microsoft.AspNet.WebApi可以提供正确版本的Newtonsoft.Json作为依赖程序集。
之后它完美地运作了。
希望这可以帮助。
我有同样的问题,最后通过运行解决
Update-Package Newtonsoft.Json –IncludePrerelease
在包管理器控制台中。
它出现了我的所有项目都在最新版本,但在Clean / ReBuild问题解决后。