我们有一个项目(日志LIB)所使用的标准asp.net应用程序(4.0框架),并且还通过SharePoint解决方案(3.5框架)。
有没有办法来定义这两个目标,这样,当我们构建项目两个版本被建?
此外,由于任何人实现这样的事情,并通过发布的NuGet它? 什么是上发布的NuGet两个版本的最好方法?
谢谢
我们有一个项目(日志LIB)所使用的标准asp.net应用程序(4.0框架),并且还通过SharePoint解决方案(3.5框架)。
有没有办法来定义这两个目标,这样,当我们构建项目两个版本被建?
此外,由于任何人实现这样的事情,并通过发布的NuGet它? 什么是上发布的NuGet两个版本的最好方法?
谢谢
答案是<supportedRuntime>
config元素。 这使您可以指定所有.NET运行时将您的应用程序可以支持和下运行。 当然,在您的应用程序只能使用功能,所有的.NET框架的选择版本提供。
总之,你应该有这个在你的配置:
<configuration>
<startup>
<supportedRuntime version="v2.0.50727"/>
<supportedRuntime version="v4.0"/>
</startup>
</configuration>
这可能需要您的应用程序最初是针对到.NET 3.5的<supportedRuntime>
允许版本上去,而不是往下走。
您可以创建两个C#项目(的csproj文件),您有相同的源文件(或多个项目,具体取决于您的结构)。 一个项目应在.NET 3.5为目标,另一个在.NET 4.0。
如果你想使用特定于.NET 4.0的功能,那么你可以用做条件编译符号在.NET 4项目中定义。
另外,您还可以添加一个或多个解决方案(用于VS2008和VS2010),在C#项目的每使用一个..