【发布时间】:2010-10-07 08:45:13
【问题描述】:
我使用 .net 4.0、linq 等编写 winforms 应用程序。它可以在使用 .net 2.0 的机器上运行吗?
【问题讨论】:
标签: .net
我使用 .net 4.0、linq 等编写 winforms 应用程序。它可以在使用 .net 2.0 的机器上运行吗?
【问题讨论】:
标签: .net
不,它不会。为 Framework 4.0 版编译的应用程序将要求该框架存在于运行应用程序的机器上。
【讨论】:
如果您使用 .NET 4 功能,那么不,它不适用于 .NET 2。
如果您只是想使用 LINQ to Objects 而没有其他更新的功能,那么您应该查看LINQBridge,它是 .NET 2 的 LINQ to Objects 的一个端口。然后您可以在您的项目属性中使 Visual Studio 以 .NET 2 为目标,使用 LINQBridge 库,然后您的应用应该可以在 .NET 2 机器上运行。
请注意,您仍然可以使用 C# 3 和 4 中的许多功能,例如 lambda 表达式(但不是表达式树)、自动实现的属性、匿名类型、可选参数和命名参数等。显然不能但一切都将可用 - 例如,dynamic 将无法在 .NET 2 上运行。
【讨论】: