繁体   English   中英

是否可以使Visual Studio *仅*使用给定参考的HintPath

[英]Is it possible to make Visual Studio use *only* the HintPath for a given Reference

假设有多个较旧的项目,每个项目都包含对给定dll的引用,如下所示:

<Reference Include="nunit.framework">
  <HintPath>..\lib\nunit.framework.dll</HintPath>
</Reference>

现在,我已更新为使用nuget,并且某些项目使用了新的refenrece,如下所示:

<Reference Include="nunit.framework">
  <HintPath>..\packages\NUnit.2.6.4\lib\nunit.framework.dll</HintPath>
</Reference>

..\\lib\\较旧的dll被删除,我希望 Visual Studio无法为我忘记更新的所有项目生成文件。 可悲的是VS不...相反,它建立对一些模糊的DLL版本某处发现我的机器上..

如果HintPath上不存在给定的Reference ,我是否可以使VS(或与此相关的msbuild)失败?

标题的简单答案-不。 这是一个提示路径,VS会始终在多个位置搜索引用。 但是,如果文件不存在,您肯定会导致构建失败-例如,在此问题中回答的(尽管条件不应该是不存在,而不是存在)。

这实际上是一个巨大的痛苦-作为Visual Studio扩展的开发人员,我发现围绕HintPath解析的行为导致我经常遇到问题。

暂无
暂无

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

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