Ext.NET MVC 配置问题总结

 

 
 

随着VS版本和.NET MVC版本、EF的版本的不断更新,虽然很多功能随着版本的提升而更完善,但对于旧版本开发的软件就有点悲催了,或许很多开发者都遇到类似的问题!

最近有一个项目是用.NET MVC3+EXT.NET MVC开发的(当时使用本博客中Ext.Net MVC 配置(2)进行配置的),现在要移植到MVC4的环境中,就遇到了各种各样的问题,都快奔溃了,现在就来总结下:

1、ASP.NET Web Pages版本问题

调试后浏览器提示:

检测到 ASP.NET Web Pages 的冲突版本: 指定的版本为“1.0.0.0”,而 bin 中的版本为“2.0.0.0”。要继续操作,请删除应用程序 bin 目录中的文件,或者删除 web.config 中的版本指定。

解决:

配置项目下的Web.config

<appSettings>
<add key="webpages:Version" value="2.0.0.0" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>

2、System.Web.WebPages.Razor.Configuration.HostSection版本问题

调试后浏览器提示:

[A]System.Web.WebPages.Razor.Configuration.HostSection 无法强制转换为 [B]System.Web.WebPages.Razor.Configuration.HostSection。类型 A 源自“System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”(在上下文“Default”中的“C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Web.WebPages.Razor/v4.0_1.0.0.0__31bf3856ad364e35/System.Web.WebPages.Razor.dll”位置处)。类型 B 源自“System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”(在上下文“Default”中的“C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Web.WebPages.Razor/v4.0_2.0.0.0__31bf3856ad364e35/System.Web.WebPages.Razor.dll”位置处)。

解决:

配置view中的Web.config

<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />

3、System.Web.WebPages.Razor.Configuration.RazorPagesSection

版本问题

调试后浏览器提示:

[A]System.Web.WebPages.Razor.Configuration.RazorPagesSection 无法强制转换为 [B]System.Web.WebPages.Razor.Configuration.RazorPagesSection。类型 A 源自“System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”(在上下文“Default”中的“C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Web.WebPages.Razor/v4.0_1.0.0.0__31bf3856ad364e35/System.Web.WebPages.Razor.dll”位置处)。类型 B 源自“System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”(在上下文“Default”中的“C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Web.WebPages.Razor/v4.0_2.0.0.0__31bf3856ad364e35/System.Web.WebPages.Razor.dll”位置处)。

解决:

配置view中的Web.config

<section name="pages"type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />

4、System.Web.Mvc.MvcWebRazorHostFactory

版本问题

类型为“System.Web.Mvc.MvcWebRazorHostFactory”的表达式不能用于返回类型“System.Web.WebPages.Razor.WebRazorHostFactory”

解决:

配置项目下的Web.config

<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<!--<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>-->
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
</assemblyBinding>

</runtime>

注:蓝色的为原来的配置,加上红色这段就不会报上面的错误了!

以上的版本问题只要把红色部分的配置改为Bin文件中对应DLL的版本数就可以了。

以上的问题是mvc3的配置移植到mvc4时出现的错误,随着VS2013和mvc5的降临,可能会出现更多的问题,以后遇到了再做补充

原文链接:http://www.th7.cn/Program/net/201404/192102.shtml
 

最新文章

  1. IDE:Eclipse查看接口实现类快捷键
  2. 一种Docker image镜像的取代方案
  3. 【 D3.js 入门系列 --- 2 】 如何使用数据和选择元素
  4. OC4_遵守多个协议
  5. 速卖通---发布商品aeopAeProductPropertys这个字段值报07004013的错误
  6. 【原】YUI Test自动化测试实例详解
  7. Mysql中文乱码问题完美解决方案[转]
  8. multisim页面设置
  9. 百度云BCC配置Apache VirtualHost 实现相同域名不同端口访问不同应用
  10. Android Studio设置代理更新下载SDK
  11. ACM入门之OJ~
  12. 简单的dfs题 --- POJ1321 棋盘问题
  13. RabbitMQ 集群原理和完善
  14. js中setTimeout() 时间参数为0
  15. centos下静默安装oracle11g
  16. TrustManagerService.java
  17. mybatis-configxml样板
  18. xorm中的几个坑
  19. Kaggle初学者五步入门指南,七大诀窍助你享受竞赛
  20. 安卓开发之ScrollView

热门文章

  1. SRS源码——UDP
  2. JS操作网页中的iframe
  3. uchome后台系统配置分析
  4. 字符串NSString与NSMutableString常用方法
  5. pytorch深度学习神经网络实现手写字体识别
  6. Hystrix熔断机制导致误报请求超时错误
  7. jenkins 2.204.2 安装, 使用国内源安装, 并且跳过插件界面, 更新成国内插件源.
  8. oracle,mysql,SqlServer三种数据库的分页查询
  9. CTE With as 递归调用
  10. Echarts学习宝典