• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > 解决.net framework 4.0环境下遇到版本不同编译不通过的方法详解

解决.net framework 4.0环境下遇到版本不同编译不通过的方法详解

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了net framework 4.0,net framework,net framework 3.5,net framework 2.0,.net framework 4.5等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文内容:
1.问题引出
2.问题解决
3.原因分析 

最近部门的开发环境都更新到了WIN7+.NET framework4+VS2010上,在体验新技术和新环境带给我们提高效率的方式方法的同时也带来了一些兼容性的问题;这几天项目闲暇时在研究SQLite,在做实验的时候碰到个问题,代码编译通过执行时反复异常中断,查到后面原来是SQLite.dll是在framework2.0环境下编译的而现在的运行环境是framework4.0,所以就出现了运行异常,如图:
    

由于以后的开发过程中,可能会引用一些第三方的组件,有可能是老的framework版本下编译的,同样会出现此类的问题,所以在本文中提供一个解决办法和说明造成此问题的原因。

查阅了相关资料,stackoverflow.com上建议在config文件中增加配置:

但是使用此方法编译后问题仍然没有解决,但是问题可以明确锁定为.net runtime环境的问题了。

再次查阅CLR Runtime版本的相关资料,引用以下CLR运行规则和各版本间关系汇总表格,如下:
规则:
1. CLR4.0及以上版本编译的应用程序总是运行在应用程序所被编译的CLR版本上;
2. CLR4.0以下版本编译的应用程序优先运行在被编译的CLR版本上,如果此版本不存在,则运行最新的小于CLR4.0的版本;
汇总如下:

EXE被编译的CLR版本号

机器上安装有CLR 1.1?

机器上安装有CLR 2.0?

机器上安装有CLR 4.0?

结果

1.1

是

无所谓

无所谓

加载CLR 1.1

2.0

无所谓

是

无所谓

加载CLR 2.0

1.1

否

是

无所谓

加载CLR 2.0

1.1

否

否

是

失败

2.0

无所谓

否

是

失败

至此我们就能很清楚的搞清各个CLR版本之间的联系了。

总结:微软每次版本升级都会造成一些新的问题的出现,早年从CLRv1.0到CLRv2.0曾经也造成很多的困惑,可能也是由于过大的组织造成不能面面俱到吧,希望在今后的版本升级中能真正做到无缝的版本联接。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Visual studio 2017如何发布dotnet core到docker
  • .NET中用ICSharpCode.TextEditor自定义代码折叠与高亮
  • .NET framework 4.0 安装失败回滚问题
  • 详解免费开源的DotNet任务调度组件Quartz.NET(.NET组件介绍之五)
  • 安装.NET Framework进度条卡住不动的解决方案(推荐)
  • .NET Framework中定时器timer的单线程与多线程使用讲解
  • .net等比缩放生成缩略图的方法
  • 解决.net framework 4.0环境下遇到版本不同编译不通过的方法详解
  • 关于.NET Framework中的设计模式--应用策略模式为List排序
  • .net框架(framework)版本不匹配的解决方法

相关文章

  • 2017-05-11HTML服务器控件和WEB服务器控件的区别和联系介绍
  • 2017-05-11asp.net为网页动态添加关键词的方法
  • 2018-08-20ASP.NET WebAPI连接数据库的方法
  • 2017-05-11Visual Studio 2017创建.net standard类库编译出错原因及解决方法
  • 2018-08-20Asp.Net使用服务器控件Image/ImageButton显示本地图片的方法
  • 2017-05-11答你所问 .NET小常识 方便学习asp.net的朋友
  • 2017-05-11浅析Repeater控件的使用 (原样导出和动态显示/隐藏Repeater中的列)
  • 2017-05-11asp.net 数组中字符串替换的几种方式
  • 2017-05-11ASP.Net不执行问题一解
  • 2017-05-11EasyUI Tree+Asp.net实现权限树或目录树导航的简单实例

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ASP.NET通用权限验证的实现代码思路
    • asp.net网站开发包wq.dll打包下载
    • 解读ASP.NET 5 & MVC6系列教程(7):依赖注入
    • Asp.net Core MVC中怎么把二级域名绑定到特定的控制器上
    • ASP.NET―001:GridView绑定List、页面返回值具体实现
    • Asp.net把图片存入数据库和读取图片的方法
    • asp.net 上传或下载当文件名包含有特殊字符"#"的处理
    • ASP.NET 站点地图(sitemap)简明教程
    • gridview和checkboxlist的嵌套相关应用
    • asp.net SqlDataAdapter对象使用札记

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有