Visual Studio 项目:如何仅包含一种配置的参考?

Visual Studio Project: How to include a reference for one configuration only?(Visual Studio 项目:如何仅包含一种配置的参考?)
本文介绍了Visual Studio 项目:如何仅包含一种配置的参考?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

环境:VS2008 C# 项目

Env.: VS2008 C# project

我需要构建我的应用程序以在 2 个不同的环境中使用.在其中一种环境中,我需要使用第 3 方 DLL 程序集.

I need to build my app for use in 2 different environments. In one of those environments, I need to use a 3rd party DLL assembly.

我可以使用#if 块隔离使用此 DLL 的代码.但是如何有条件地在 CS 项目文件中包含对 DLL 的引用呢?

I could isolate the code that uses this DLL using #if blocks. But how do I conditionally include the reference to the DLL in the CS project file?

womp 在他的评论中有一个很好的观点.我变成了一个单独的问题:如果从未调用过引用的DLL,它会被加载吗?TIA,

womp has a good point in his comment. I turned into a separate question: Will the referenced DLL be loaded at all if it's never called? TIA,

推荐答案

卸载项目并以.XML格式打开

Unload the project and open it as .XML

找到引用项标签并添加条件属性.

Locate the reference item tag and add a Condition attribute.

例如:

<ItemGroup>
  <Reference Include="System.Core">
    <RequiredTargetFramework>3.5</RequiredTargetFramework>
  </Reference>
  <Reference Include="System.Data" />
  <Reference Include="System.Drawing" />
  <Reference Include="System.Xml" />

  <Reference Include="MyUtilities.Debug"
    Condition="'$(Configuration)'=='Debug'"/>

</ItemGroup>

注意最后一个引用现在有一个条件.

Notice the last reference now has a condition.

这篇关于Visual Studio 项目:如何仅包含一种配置的参考?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

MSBuild cannot find a reference(MSBuild 找不到参考)
The reference assemblies for framework .NETCore, Version=v5.0 were not found(未找到框架 .NETCore,Version=v5.0 的参考程序集)
quot;File has a different computed hash than specified in manifestquot; error when signing the EXE(“文件的计算哈希值与清单中指定的不同签署EXE时出错)
MS-Build BeforeBuild not firing(MS-Build BeforeBuild 未触发)
Using C# 7.1 with MSBuild(将 C# 7.1 与 MSBuild 结合使用)
Build project with Microsoft.Build API(使用 Microsoft.Build API 构建项目)