【发布时间】:2012-01-19 05:28:43
【问题描述】:
我有一个针对 .net 框架 3.5 的解决方案。所有对核心 dll 的引用都有运行时版本 2.x,因为它们是用它编译的。为什么会这样?这是否意味着我没有使用带有错误修复的最新版本的 DLL?
【问题讨论】:
标签: .net visual-studio-2008 dll .net-3.5 .net-2.0
我有一个针对 .net 框架 3.5 的解决方案。所有对核心 dll 的引用都有运行时版本 2.x,因为它们是用它编译的。为什么会这样?这是否意味着我没有使用带有错误修复的最新版本的 DLL?
【问题讨论】:
标签: .net visual-studio-2008 dll .net-3.5 .net-2.0
Framework 3.5 仍在 CLR 2.0 上工作。 V3 和 V3.5 仅添加了一些(实际上很多)新类,但没有更改现有程序集。编译器也发生了变化,但实际上并没有改变运行时。
这就是为什么在 %windir%\Microsoft.NET\Framework\v3.5(或 Framwork64)中,您不会找到 V2 中已经可用的程序集。
Framework V4 引入了新版本的 CLR。你会在%windir%\Microsoft.NET\Framework\v4.0.30319所有程序集中找到相应的。
Versions and Dependencies page 列出所有版本,包括基类库版本和 clr 版本。
[编辑]由于V4.5即将推出,下一个版本same table is available。
【讨论】:
不,您使用的是最新的 3.5,仍然依赖于某些程序集文件中的 2.x。 尝试检查 2.x 附带的程序集,您永远不会发现它们是 3.x,因此这些文件没有新版本。
加1: 要检查您的目标框架,请转到项目繁荣->编译->单击高级编译选项->目标框架。
【讨论】: