.NET 紧凑框架向后兼容 3.5 和 2.0

Posted

技术标签:

【中文标题】.NET 紧凑框架向后兼容 3.5 和 2.0【英文标题】:.NET compact framework backward compatibility 3.5 and 2.0 【发布时间】:2011-02-18 12:54:54 【问题描述】:

我是否需要在安装了 .NET 3.5 的设备上安装 .NET 2.0?

到目前为止,我的应用程序可以在 .NET 2.0 上运行(这可能会更快),但长期计划是将其移植到 .NET 3.5。我需要订购设备,而 OEM 需要知道应将哪个版本的 .NET 添加到 Windows CE 映像(版本 5.0)。要不要让他同时添加 .NET 2.0 和 .NET 3.5?

【问题讨论】:

【参考方案1】:

使用app.config 或device.config 文件,您可以提升您的应用程序并通过supportedRuntime or compatibility version 告诉.NET Compact Framework 它可以使用哪些运行时(其中一些用于.NET 1.0 到.NET 2.0,但 .NET 3.5 的机制保持不变。

Microsoft even has a tool 帮助生成正确的文件。

【讨论】:

这与这里的问题有什么关系? =/ 怎么不相关?如果您有一个为非 3.5(即 1.0 或 2.0)构建的程序集,您可以通知运行时提升该程序集并在 3.5 下运行。如果您只安装了 3.5,那么 2.0 应用程序不会神奇地运行。它可能。可能不会。这两种情况我都见过。 app.config 条目确保它会。【参考方案2】:

据我所知,只应将一个版本的 .net cf 添加到图像中。 3.5 或 2.0,而不是两者。

至于向后兼容性,我相信Artiom answers。

【讨论】:

【参考方案3】:

实际上,.NET 3.5 只是 .NET 2 框架之上的程序集的超集(与完全独立的 .NET 4 不同)。

因此,如果您安装 .NET 3.5,它将安装并运行 .NET 2 应用程序没有任何问题,afaik。

【讨论】:

如果问题是关于完整桌面框架的,这个答案将是正确的。在紧凑的框架上,它是一组全新的组件。请参阅 ctacke 的答案,了解如何做你想做的事。

以上是关于.NET 紧凑框架向后兼容 3.5 和 2.0的主要内容,如果未能解决你的问题,请参考以下文章

.NET Frameworks 从 3.5 到 2.0 的向前兼容性

用于向后移植新的 .NET Framework 功能的“兼容包”?

将 Web 应用程序从 2.0 迁移到 3.5 框架的最快和最佳方法?

为紧凑框架预编译 protobuf-net 类型模型

如何迁移 .NET Framework 应用程序? [3.5 到 2.0]

怎么让vs2008用.net framework4.0