【发布时间】:2013-07-16 00:34:22
【问题描述】:
我正在构建一个类库,并将其部署为 NuGet 包,它允许我根据添加到的项目的 .NET 框架版本选择不同的程序集作为引用添加。这是一个非常好的功能,但我想知道是否可以拥有一个类库项目,并针对多个版本的 .NET 框架构建它?
我宁愿避免:
MyLibrary40.dll 和 MyLibrary45.dll
如果可能的话,因为这两个项目将不得不共享大量代码。 4.5 版本将提供 async 函数,这是 4.5 的功能。
有谁知道最好的方法是什么?我可以使用多个构建配置吗?还是我必须走单独的项目路线?
如果我在 C++ 中工作,我可能会使用多个配置和 #if 块围绕仅在一种配置中受支持的功能,但我担心这会导致我有两个同名但做不同的程序集东西。
提前致谢!
【问题讨论】:
-
所以你想在一个程序集中定位不同的版本?
-
这是获得 BadImageException 的最佳方法 :)
-
但是,我找到了一个可以编译的解决方法,您可以查看我在问题中提供的链接,它们可能会对您的旅程有所帮助 - stackoverflow.com/questions/15549011/…
-
@LarsKristensen,我想要一个项目文件,但能够生成两个程序集——一个支持 .NET 4.0,一个支持 .NET 4.5 并添加一些异步功能——无需创建单独的项目..
-
我也问过这个,没有给出严格的答案,也许你会有比我更好的答案,你需要的是配置管理器..stackoverflow.com/questions/15321757/…
标签: c# .net visual-studio-2012