在Common Language Runtime (CLR) Microsoft 页面中,它表示 .Net Framework 4 和 4.5 都使用 CLR 版本 4。
但是,在此页面(.NET Framework 版本和依赖项)中,它写道“.Net Framework 4.5 版包含 CLR 4 的更新版本”
还写道:
'针对 .NET Framework 4.5.1 的可执行文件将被阻止在仅安装了 .NET Framework 4.5 的计算机上运行,并且将提示用户安装 .NET Framework 4.5.1。此外,不应从 .NET Framework 4.5 应用程序调用 .NET Framework 4.5.1 程序集。'
问题:如果所有 Net Framework 版本 4 和 4.5 和 4.5.1 在相同的 CLR 版本 4 上运行托管代码,为什么我不能在仅安装了 .Net 4.0 的机器上运行针对 .Net Framework 4.5 的可执行文件?
(不管您的目标是 .NET 框架 4、4.5 还是 4.5.1,编译器最终不会生成适用于 CLR 版本 4 的 IL 吗?)