繁体   English   中英

如何在每个配置的基础上添加程序集引用

[英]How to add Assembly-References on a per-configuration-basis

我目前正在寻找一些仅调试代码到Windows Phone项目。 这个调试代码将拖入一些调试类库引用(nunit helpers)和一些WCF服务客户端引用,我真的希望在发布版本中没有这些引用。

任何人都可以建议我可以添加一个Assembly-Reference来调试,但不会让它出现在发布中吗?

我在Connect上看过这个 - https://connect.microsoft.com/VisualStudio/feedback/details/106011/allow-adding-assembly-references-on-a-per-configuration-basis-debug-release-但它是标记为“推迟”

在Visual Studio的UserVoice上有一个请求,但它被标记为Closed因为这里Won't Fixhttps//visualstudio.uservoice.com/forums/121579-visual-studio-ide/suggestions/2062487-allow-assembly-references-到交换机基于-ON-CONFI

两种情况都使用MSBuild Condition ,你曾经配置过csproj而忘记了这一点。

第一:使用Condition

  1. 创建新项目DebugOnlyHelpers
  2. 引用此项目中所有特定于Debug的帮助程序
  3. csproj文件中指定需要过滤引用的条件:

<ProjectReference 
            Include="DebugOnlyHelpers.csproj"
            Condition=" '$(Configuration)' == 'DEBUG' "

第二:使用Condition选择/何时

<Choose>
    <When Condition=" '$(Configuration)'=='DEBUG' ">
        <ItemGroup>
             <Reference Include="NUnit.dll" />
             <Reference Include="Standard.dll" />
         </ItemGroup>
    </When>
    <Otherwise>
         <ItemGroup>
             <Reference Include="Standard.dll" />
         </ItemGroup>
    </Otherwise>
</Choose>

不幸的是,现在没办法做到这一点。 您必须切换到debug并删除引用,然后在返回发行版时将其添加回来。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM