Pau*_*ner 4 .net visual-studio-2010
我正在尝试创建一个类库的系列,这些类在组织内的多个应用程序之间使用.其中一些应用程序面向.NET 3.5和一些目标4.0.
我们希望提供两个版本的程序集,一个定位3.5,一个定位4.0,以便主机应用程序可以选择最适合它们的程序集.
3.5和4.0版本之间存在一些细微差别:
有没有任何解决方案可以让我重复使用代码库的重叠部分,并防止简单地分叉源树?
我的目标是生成针对其指定框架的多个版本的程序集,这些框架可以滚动到NuGet包中并在我们的内部订阅源上公开.
这听起来像条件编译器指令的工作.
仔细考虑你的代码:
#If NET35
...
#End If
Run Code Online (Sandbox Code Playgroud)
和
#If NET40
...
#End If
Run Code Online (Sandbox Code Playgroud)
从这里,你必须添加NET35和NET40编译常量到您的项目,我会建议先在配置管理器创建自定义的配置,例如DebugNET35,DebugNET40,ReleaseNET35,和ReleaseNET40.创建这些配置后,您可以切换到每个配置并转到项目的"高级编译选项",您可以在其中设置自定义常量,NET35或者NET40根据当前配置.
您也可以在此对话框中设置目标框架,但它将全局设置您的框架版本.要为每个配置设置自定义目标框架,请遵循Pierre的步骤.
之后,选择一个配置并编译!我已经使用这种技术为应用程序的"Demo"和"Full"版本共享相同的代码库.
希望未来版本的Visual Studio将自动定义框架版本:https://connect.microsoft.com/VisualStudio/feedback/details/113323/include-framework-version-defines-automatically
编辑: .NET Framework博客中有一篇新文章讨论了在Visual Studio 2010和2012中编写可移植代码库:http: //blogs.msdn.com/b/dotnet/archive/2012/07/06/targeting-multiple -platforms-with-portable-code-overview.aspx,这看起来像一个更清洁的解决方案.
| 归档时间: |
|
| 查看次数: |
922 次 |
| 最近记录: |