mvc4.5更改为mvc4.0方法总结
一:使用MVC4.5创建的项目结果IIS服务器不支持(windows server2008 支持.net4.0),整了半天终于有点眉目了,方法如下:
1、先将项目所在的文件夹找到,去掉文件夹及其文件的只读属性。
2、在vs中右键查看项目属性,选择目标版本号,进行更改。
3、System.net.http 这个引用需要进行引用,找到4.0下的System.net.http 进行引用。
4、找到创建的web项目下的 *.csproj 文件查找net45字符串,修改问net40即可。
5、重新生成项目运行即可。
二:如果此时重新生成项目可行,运行报错找不到依赖项,报错
未能加载文件或程序集“System.Web.Mvc”或它的某一个依赖项。未能验证强名称签名。
解决如下:
1.mvc项目中根目录web.config改
<dependentAssembly> <assemblyIdentity name="System.Web.WebPages" publicKeyToken="null" /> <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="System.Web.Mvc" publicKeyToken="null" /> <bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.0.0.1" /> </dependentAssembly>
2.views/web.config中改
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null"> <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" requirePermission="false" /> <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" requirePermission="false" /> </sectionGroup>
1 <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null"> 2 <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" requirePermission="false" /> 3 <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" requirePermission="false" /> 4 </sectionGroup>
1 <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null"> 2 <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" requirePermission="false" /> 3 <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" requirePermission="false" /> 4 </sectionGroup>
3.其他引用的版本,改成相对应项目的版本,在此不一一列举,根据运行报错更改。
4.调试成功。