System.MissingMethodException:“找不到方法:“System.Web.Routing.RouteValueDictionary System.Web.WebPages.TypeHelper.ObjectToDictionaryUncached(System.Object)”。”
System.MissingMethodException:“找不到方法:“System.Web.Routing.RouteValueDictionary System.Web.WebPages.TypeHelper.ObjectToDictionaryUncached(System.Object)”。”
原因是System.Web.WebPages.dll 的版本有问题,可能packages文件夹对应的文件已经不存在
解决办法
1、可以在原有的解决方案中新建一个项目
1.2选择ASP.NET Web应用程序(因为我的项目的普通的asp.net mvc项目)
1.3 MVC项目
2、打开新建好的项目的*.csproj 文件,有记事本、notepad++等工具进行打开
搜索“System.Web.WebPages.dll” 的关键词,复制红色部分(要进行替换用),比如
..\packages\Microsoft.AspNet.WebPages.3.2.4\lib\net45\
3、打开原有报错对应项目的*.csproj 文件,有记事本、notepad++等工具进行打开
搜索“System.Web.WebPages.dll” 的关键词,
然后把
..\packages\Microsoft.AspNet.Razor.3.0.0\lib\net45\
替换成
..\packages\Microsoft.AspNet.WebPages.3.2.4\lib\net45\
检查中需要修改的dll需要是
System.Web.Helpers.dll、System.Web.WebPages.dll、System.Web.WebPages.Deployment.dll、System.Web.WebPages.Razor.dll
返回vs studio项目中,看到vs检测中修改,选择“全部重新加载”
最终重新启动项目就可以了
提示来源