博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
asp.net mvc本地程序集和GAC的程序集冲突解决方法
阅读量:7240 次
发布时间:2019-06-29

本文共 2477 字,大约阅读时间需要 8 分钟。

一个从asp.net mvc 3升级到asp.net mvc 4的项目发生了如下错误:

[A]System.Web.WebPages.Razor.Configuration.HostSection cannot be cast to [B]System.Web.WebPages.Razor.Configuration.HostSection. Type A originates from 'System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' in the context 'Default' at location 'C:\WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Web.WebPages.Razor\v4.0_1.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll'. Type B originates from 'System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' in the context 'Default' at location 'C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\7c2060f6\6145b34e\assembly\dl3\9036b7c7\fc8023c0_73fecb01\System.Web.WebPages.Razor.DLL'.

这是因为本地程序集和GAC的程序集冲突了, 是因为在Web Pages 1.0中他在web.config内新增了一个配置节点。Web Pages 1.0在Web.config中目前我已发现到新增了一个配置节点,路径在~/Views/web.config.而不是web.config.

<configuration>

   <system.web.webPages.razor /> <!--注意他于常用的system.web同级—>

   <system.web />

...

</configuration>

修改~/Views/web.config成如下:

接着修改~/web.config文件

<system.web>

  <compilation debug="true" targetFramework="4.0">
    <assemblies>
      <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      <add assembly="System.Web.Helpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      <add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      <add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    </assemblies>
  </compilation>
  <authentication mode="Forms"></authentication>
  <pages>
    <namespaces>
      <add namespace="System.Web.Helpers" />
      <add namespace="System.Web.Mvc" />
      <add namespace="System.Web.Mvc.Ajax" />
      <add namespace="System.Web.Mvc.Html" />
      <add namespace="System.Web.Routing" />
      <add namespace="System.Web.WebPages" />
    </namespaces>
  </pages>
</system.web>

具体也可以参照 。

转载地址:http://quybm.baihongyu.com/

你可能感兴趣的文章
4、CommonChunkPlugin提取公共js-提取多个
查看>>
(八)Java 修饰符
查看>>
专家揭秘:STM32启动过程全解
查看>>
解决scrapy报错:ModuleNotFoundError: No module named 'win32api'
查看>>
js设计模式——5.状态模式
查看>>
团队冲刺第七天
查看>>
for循环
查看>>
pinpoint本地开发——collector
查看>>
vs2010磁盘空间不足
查看>>
115个Java面试题和答案——终极列表
查看>>
POJ1151 离散化求矩形面积的并
查看>>
Hdu 1730 Nim博弈
查看>>
秋冬咳嗽不吃药 12款民间偏方巧止咳
查看>>
PHP的搭建
查看>>
一个垃圾的Android权限框架
查看>>
扫描局域网中IP MAC地址的命令
查看>>
Python脱产8期 Day30 2019/5/27
查看>>
CROC-MBTU 2012, Final Round (Online version, Div. 2) A - Paper Work
查看>>
TensorFlow介绍(官网资料)
查看>>
Docker系列08—搭建使用私有docker registry
查看>>