条件参考不起作用VS2013

时间:2014-10-06 14:01:06

标签: c# .net visual-studio-2013 conditional-compilation

我需要引用第三方DLL 它们存在2个版本:6.3和6.4 那么即将到来的是什么?在Solution Configuration Manager中,我添加了4个新的活动解决方案配置:
6.3发布 6.3调试 6.4发布 6.4调试

根据这些版本,我想更改我的参考文献 我有一个文件夹:external \ 6.4 \ REFERENCED DLLS LOCATED
和其他文件夹:外部\ 6.3 \ REFERENCED DLLS LOCATED

dll名称相同,但文件夹不同.. 我的目标是什么? 当我将构建配置设置为:6.4-Release我希望引用DLL来自外部\ 6.4 ..并且当设置构建配置为6.3时 - 从外部发布版本6.3。

为什么?因为它们具有仅在新DLL中可用的新API属性(我需要)。

稍后在我的代码中,我可以根据构建配置在某些地方制作自定义代码,然后编译。

所以我所做的是:
1.增加了4个新的构建配置
2.在记事本++中打开.csproj并编辑如下:
3.之间< / PropertyGroup>和< ItemGroup>我添加了以下内容:

<Choose>
<When Condition="'$(Configuration)' == '6.4-Release'">
<ItemGroup>
    <Reference Include="IPAddressControlLib.dll">
        <HintPath>..\external\IPAddressControlLib.dll</HintPath>
    </Reference>
</ItemGroup>
</When>
</Choose>

我期待什么?当我加载解决方案并选择构建配置6.4-Release时,我会在参考dll列表中看到这个dll,当我选择其他东西时 - 我不会看到它。

但这种情况从未发生过,我从未见过dll&#34; IPAddressControlLib&#34;在我的参考列表中(在视觉工作室内的gui)。

我做错了什么?感谢。

0 个答案:

没有答案