如何知道哪些其他项目引用Visual Studio中的某个项目?

时间:2012-03-06 22:36:59

标签: visual-studio visual-studio-2010 projects-and-solutions visual-studio-project find-all-references

在Visual Studio中,对于类,字段,方法,我可以右键单击并说出“查找所有引用”以查看谁在调用我的代码。

但是项目没有类似的东西。

最简单的方法是什么? 我是否必须检查每个项目?

编辑: enter image description here

A指B,但使用正则表达式找不到B.

4 个答案:

答案 0 :(得分:26)

  1. 查找全部(CTRL + SHIFT + F)
  2. “查找内容:”=参考。* ReplaceThisTextWithProjectName
  3. 选中“使用:” - > “查找选项”部分中的“正则表达式”
  4. “查看这些文件类型:”=“*。* proj *”
  5. “查找:”=选择驱动器上的目录/文件夹。不要使用“整个解决方案”,它将无法访问项目文件本身。

答案 1 :(得分:3)

不确定您是否考虑过使用Resharper(非免费),但它很容易让您右键单击项目以查看相关代码。

在我看来,我不能没有并且非常值得付出代价 - 但并不适合所有人。

http://www.jetbrains.com/resharper/webhelp/Navigation_and_Search__Finding_Usages__Finding_Dependencies_and_Referenced_Code.html

如果您想尝试一下,有30天的试用期 - P.S我不适合他们,只是该工具的爱好者! :)

http://www.jetbrains.com/resharper/

答案 2 :(得分:2)

右键单击项目 => 项目依赖项。 然后您在下拉框中选择您的项目。 下面所有变灰的项目取决于所选项目。 (它们是灰色的,所以你不能通过检查它们来创建循环依赖。)

答案 3 :(得分:0)

在记事本之类的编辑器中搜索所有项目文件

与fenone答案类似的方法是转到Windows中的解决方案文件夹,然后通过Windows搜索对*。* proj进行过滤。这将为您提供所有项目文件(或者也许您在其他文件夹中有一些文件,以后可以添加它们)。只需选择所有这些文件,然后在诸如Notepad ++之类的编辑器中打开即可。您可以根据需要将其他项目添加到Notepad ++实例。一旦所有项目文件都打开了,就可以轻松搜索对项目,.dll,库等的引用。我更喜欢这种方法,因为项目文件在其自己的编辑器中处于关闭状态,而且我认为它们更易于搜索。

卸载项目并重新编译

第二种方法是在Visual Studio的解决方案资源管理器中右键单击您的项目,然后单击“卸载项目”,然后分析或重新编译解决方案。任何实际在代码中引用卸载项目的项目都会出错,但是您的构建仍将成功,并且您的项目级别引用仍将显示为有效(至少在VS 2017中对我而言)。一种类似的更具侵入性的方法,它会使项目级引用无效并使任何引用构建实际上都失败,那就是更改项目文件夹的路径,以便Visual Studios找不到它。这还会产生次要的影响,即还要通过路径而不是按项目来标识任何引用设置。

其他注意事项

当然,您的项目可以包含在其他解决方案中,因此可以在解决方案中使用类似的搜索技术。只是为了覆盖您的基础,可能需要按路径而不是按项目引用已编译文件,这只是需要注意的事情。检查您的构建后事件,以确保未在意外地方复制和引用任何内容。搜索.dll的所有实例或某个合理的文件夹范围内的任何实例,只是要注意任何副本。