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检测中修改,选择“全部重新加载”

 

最终重新启动项目就可以了

 

 

提示来源

Mvc 5.1 MissingMethodException System.Web.WebPages.TypeHelper.ObjectToDictionaryUncached

posted @ 2023-03-11 21:31  ☆♂安♀★  阅读(688)  评论(0编辑  收藏  举报