【发布时间】:2012-11-08 10:41:37
【问题描述】:
我正在寻找有关 .NET 框架特定版本之间向前兼容性的可靠建议。
为了清楚起见,假设我们讨论的是仅支持 .NET 2.0 的 SQL Server 2008,并且我们在其中加载了一个带有存储过程的 v3.5 程序集,以及它的所有 v3.5 依赖项。
一方面,我们知道.NET 框架是mostly backward compatible。
我们也知道forward compatibility is only supported for framework 1.1,而且还不止于此。但是,the CLR version for frameworks 2.0, 3.0, and 3.5 is the same:CLR 2.0。
这些事实如何结合?
“CLR 相同”的事实能否获胜?是否可以说,由于三个 FW 版本之间的 CLR 版本相同,只要还引入了所有依赖项,就可以安全地将 v3.5 代码引入 v2.0 环境?在哪种情况下,我们可以将“不支持前向兼容性”通知视为在一般情况下正确,但在 v3.5-v2.0 关系的特定情况下不正确?
(我们实际上已经尝试将具有所有依赖项的 v3.5 程序集导入 SQL Server 2008。它有效。但我想知道它是因为它应该有效,还是因为脆弱的魔法。) em>
【问题讨论】:
标签: .net .net-3.5 .net-2.0 compatibility forward-compatibility