c# - Visual Studio 2015 "Find All References"只搜索打开的文件

标签 c# visual-studio-2015

最近我安装了 Visual Studio 2015(Microsoft Visual Studio Community 2015 Version 14.0.25425.01 Update 3),用它打开了一个简单的网站,发现“查找所有引用”只搜索打开的文件。

同一网站在 Visual Studio 2013 中一切正常。

然后我在 Visual Studio 2015 中创建了一个新网站,“查找所有引用”仍然无法正常工作。所以我想这与我自己的网站无关,这是 Visual Studio 的问题。

我用谷歌搜索并尝试了以下方法:

  • 确保网站的框架版本和Visual Studio配置都是4.0
  • 工具 -> 导入和导出设置 -> 重置所有设置
  • 检查输出窗口,没有发现错误
  • 删除.suo文件并重建
  • 工具 -> 选项 -> 文本编辑器 -> 文件扩展名,为 c# 添加 .cs
  • 重新安装 Visual Studio
  • 清除 Visual Studio 缓存
  • 也许还有其他我不记得了,因为我为此苦苦挣扎了将近两天

抱歉我的英语不好,感谢您的帮助!


更新1。有关该问题的更多详细信息:

“仅搜索打开的文件”,我的意思是,当使用“查找所有引用”搜索标识符时,如果文件已打开,则可以找到文件中出现的标识符,否则忽略这些出现。

比如说,有一个标识符 foo() 和一个调用 foo() 的文件 callfoo.cs。 右键单击 foo(),选择“查找所有引用”。

如果 callfoo.cs 已经在文本编辑器中打开,则可以找到其中出现的 foo(),并显示在 Find Symbol Results 窗口中,否则返回(0 个引用)。

预期的是,无论是否打开 callfoo.cs,都应该找到 foo() 的出现并显示在“查找符号结果”窗口中。

最佳答案

这就是“网站”的工作方式,是设计使然。

创建新解决方案时,如果您在 Visual Studio 中转到“新建/项目”而不是“新建/网站”,您将能够选择一个了解所有引用的项目类型。

不过,我确实认为 Visual Studio 应该只对当前网站进行“手动搜索”以查找引用 - 它不仅懒惰而且不方便。

解决方法是只在解决方案中搜索方法名称。

关于c# - Visual Studio 2015 "Find All References"只搜索打开的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39511375/

相关文章:

c# - List<T>.Add(T) 的最佳重载方法匹配有一些无效参数

c# - 什么时候应该在 C# 2.0 和更新版本中使用 `Object`?泛型会替换所有出现的对象吗?

visual-studio-2015 - 设备没有包 com.google.android.gsf (Visual Studio Android Emulator)

c# - Visual Studio 2015,Resharper 在调试单元测试时卡住

c++ - 无法调用 std::function

asp.net-mvc - MvcBuildViews true 导致 "'/temp' is not a valid IIS application"错误

c# - 在 asp.net core 的每个请求中将用户数据存储在 session 存储中或从数据库中检索?

c# - ClosedXML 添加带条件格式的工作表

asp.net-mvc - 如何在 Visual Studio 2015 中快速解析命名空间

c# - 为 .NET 开发和调试优化 IIS7