我可以为VS 2010中的.NET版本的不同配置设置不同的引用吗?

时间:2015-10-27 16:31:38

标签: c# visual-studio-2010 .net-assembly

我有一个必须针对不同版本的依赖DLL构建的解决方案。我想将解决方案配置为针对目标平台的不同“版本”具有不同的配置(目标)。 (我们正在为第三方框架构建库,我们必须针对多个版本)

我认为为每个目标版本设置解决方案的参考文献会有所不同,但我无法成功完成此操作。我怀疑我做错了什么。

附件是一个屏幕截图。

正如您所看到的,我已经创建了许多“目标”配置,并且我希望目标配置能够控制生成的DLL依赖于哪个版本的依赖项。

我们无法控制这些DLL,无法重建以进行不同版本的呼叫转发。 enter image description here

1 个答案:

答案 0 :(得分:0)

我没试过这个,但你可以尝试在text / xml编辑器中编辑csproj文件,并在参考ItemGroups中添加一个Condition,例如,

  <ItemGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'">
    <Reference Include="System">
      <Name>System</Name>
    </Reference>

您需要为需要不同引用的每个配置创建一个ItemGroup。

或者,您可以使用依赖项注入在运行时加载适当的程序集。如果引用的程序集都实现了相同的接口,那么这将更容易,因此您的调用代码是针对接口编码的,而不是不同程序集中的底层实现。