实现一个.NET项目都瞄准3.5和4.0(Implement a .Net project targ

2019-09-18 13:09发布

我们有一个项目(日志LIB)所使用的标准asp.net应用程序(4.0框架),并且还通过SharePoint解决方案(3.5框架)。

有没有办法来定义这两个目标,这样,当我们构建项目两个版本被建?

此外,由于任何人实现这样的事情,并通过发布的NuGet它? 什么是上发布的NuGet两个版本的最好方法?

谢谢

Answer 1:

答案是<supportedRuntime> config元素。 这使您可以指定所有.NET运行时将您的应用程序可以支持和下运行。 当然,在您的应用程序只能使用功能,所有的.NET框架的选择版本提供。

总之,你应该有这个在你的配置:

<configuration>
  <startup>
    <supportedRuntime version="v2.0.50727"/>
    <supportedRuntime version="v4.0"/>
  </startup>
</configuration>

这可能需要您的应用程序最初是针对到.NET 3.5的<supportedRuntime>允许版本上去,而不是往下走。



Answer 2:

您可以创建两个C#项目(的csproj文件),您有相同的源文件(或多个项目,具体取决于您的结构)。 一个项目应在.NET 3.5为目标,另一个在.NET 4.0。

如果你想使用特定于.NET 4.0的功能,那么你可以用做条件编译符号在.NET 4项目中定义。

另外,您还可以添加一个或多个解决方案(用于VS2008和VS2010),在C#项目的每使用一个..



文章来源: Implement a .Net project targeting both 3.5 and 4.0