我有一个必须针对不同版本的依赖DLL构建的解决方案。我想将解决方案配置为针对目标平台的不同“版本”具有不同的配置(目标)。 (我们正在为第三方框架构建库,我们必须针对多个版本)
我认为为每个目标版本设置解决方案的参考文献会有所不同,但我无法成功完成此操作。我怀疑我做错了什么。
附件是一个屏幕截图。
正如您所看到的,我已经创建了许多“目标”配置,并且我希望目标配置能够控制生成的DLL依赖于哪个版本的依赖项。
答案 0 :(得分:0)
我没试过这个,但你可以尝试在text / xml编辑器中编辑csproj文件,并在参考ItemGroups中添加一个Condition,例如,
<ItemGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'">
<Reference Include="System">
<Name>System</Name>
</Reference>
您需要为需要不同引用的每个配置创建一个ItemGroup。
或者,您可以使用依赖项注入在运行时加载适当的程序集。如果引用的程序集都实现了相同的接口,那么这将更容易,因此您的调用代码是针对接口编码的,而不是不同程序集中的底层实现。