今天在调试Mvc程序时,提示GAC与Temporary ASP.NET Files目录内引用文件版本不一致。

[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=2.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_2.0.0.0__31bf3856ad364e35\System.Web.WebPages.Razor.dll'.
Type B originates from 'System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' in the context 'Default' at location
'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\vs\c6247a09\b563b17c\assembly\dl3\6828be27\18b62d01_f301d301\System.Web.WebPages.Razor.dll'

产生原因:Views目录下的Web.config的<configSections>节点内配置的版本与 IIS站点主目录内Web.Config内配置的节点版本不一致。

Views目录内Web.config的DLL默认引用位置是GAC目录内文件;IIS站点主目录引用的是Temporary ASP.NET Files目录内的文件。

解决办法一:

1、打开IIS站点主目录内Web.Config文件,转到<runtime>节点

2、将出错的的版本做重定向处理,例:

<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>

解决办法二:

将Views目录内Web.config文件<configSections>节点的版本号修改为与IIS站点主目录内Web.Config内文件版本一致。

注意事项:上述两种方法修改后,一定要再将Temporary ASP.NET Files目录内的临时文件清除。

转载于:https://www.cnblogs.com/todayhero/p/7150264.html

MVC 程序在编译时提示 GAC与 Temporary ASP.NET Files目录内引用文件版本不一致相关推荐

  1. 自学java编译老是出错_编写HelloWorld程序编译时提示写入HelloWorld时出错是什么意思...

    编写HelloWorld程序编译时提示写入HelloWorld时出错是什么意思 这个能出错的地方就难说了,能给出代码或者错误提示吗 为什么javac编译后说写入错误呢HelloWorld.java : ...

  2. 关于idea编译时提示 : 另一个程序正在使用此文件,进程无法访问; 问题修复记录

    关于idea编译时提示 : 另一个程序正在使用此文件,进程无法访问. 问题修复记录 首先报错原文 : Error:Maven Resources Compiler: Failed to copy 'E ...

  3. QtCreator 编译时提示 warning C4819 的解决办法

    QtCreator 编译时提示 warning C4819 的解决办法 用 QtCreator 和Visual C++ 编译器编译程序时经常会出现类似的警告: warning C4819: 该文件包含 ...

  4. 如何解决Visual Studio2010 编译时提示系统找不到指定文件问题

    如何解决Visual Studio2010 编译时提示系统找不到指定文件问题 参考文章: (1)如何解决Visual Studio2010 编译时提示系统找不到指定文件问题 (2)https://ww ...

  5. 编译时提示 Could NOT find OpenSSL 的解决方法

    原文链接:https://www.jianshu.com/p/55249a0272ad 编译时提示如下的类似信息时: Could NOT find OpenSSL, try to set the pa ...

  6. 钉钉小程序编译时提示 ‘dd is not defined‘

    今天在使用本地环境接入钉钉OA审批(钉钉官方OA审批接入)时,利用小程序开发工具导入从官网下载的前端项目后,编译时控制台一直报'dd is not defined' 的错 折腾了半天,重新去看看官网的 ...

  7. 小程序编译时, 提示: 80051,scource size 8290KB exceed max limit 2MB

    编译错误提示 解决办法一: 先查看是那部分文件体积过大 - 图片 -----> 压缩图片 - 字体文件 ----> 减小字体文件体积, 更改方式 - pages -> 办法如下: 解 ...

  8. ProtoBuf在使用protoc进行编译时提示: Required fields are not allowed in proto3

    场景 在使用protobuf的编译器进行编译proto文件时提示 Required fields are not allowed in proto3 注: 博客: https://blog.csdn. ...

  9. amesim安装失败_AMESim 安装后,编译时提示找不到可执行文件

    如果先安装AMESIM,后安装VC++编译器,AMESIM编译时可能提示找不到可执行文件.下面是可能的解决方案. 环境: 操作系统:XP,x86 软件:AMESIM 8A(安装目录:D:\AMESim ...

最新文章

  1. Python——with语句、context manager类型和contextlib库
  2. Harris’s Linked List
  3. Python全栈之路Day13
  4. Python学习笔记--2--面向对象编程
  5. 解决-bash: make: command not found安装提示错误
  6. luci L大_油耗最低1.4L!开这四款车一个月都不用进加油站
  7. 51NOD 1125(交换机器最小代价) (贪心) 思想 !思想!
  8. java min 函数的使用方法_【Python】Java程序员学习Python(五)— 函数的定义和使用...
  9. linux安装qq_Windows和Linux的比较
  10. 吴恩达|机器学习作业1.1多变量线性回归
  11. 4g网络什么时候淘汰_你的4G手机 什么时候淘汰
  12. html 目录生成器,Tocify:动态节点目录菜单生成器_html/css_WEB-ITnose
  13. C# 添加服务引用。
  14. Linux安装tar软件教程,tar的简单实用及linux常见软件的安装
  15. 正则表达式与grep
  16. 实车采集的数据重建场景_苹果地图经过新一轮数据采集,重建后的它会颠覆果粉想象吗?...
  17. 对于爱情的透彻性理解:恋爱变成一场无间道...
  18. 【labview】图表时间轴(数据+时间戳) +源程序
  19. 命令行运行Windows更新
  20. 云原生下的灰度体系建设

热门文章

  1. php截取中文字符串不乱码
  2. C# 读写文本文件乱码解决方案
  3. 常见Android开源框架使用笔记之——afinal框架
  4. Safari中new Date()格式化问题总结
  5. 计算机视觉中,目标跟踪算法的综述
  6. 做网赚多年你也未必知道的网赚真相
  7. MapKit 教程: 覆盖物
  8. 区块链 java 写入公链_2019公链项目实战 区块链公链项目实战 golang公链项目实战(视频+源码)...
  9. 充分发展的管内层 流流动换热中对流换热系数与通道的当量尺寸成反比
  10. 多种方式实现英文单词词频统计和检索系统