我无法在Resharper 8中使用“从生成的文件中过滤结果”

时间:2014-02-21 11:39:27

标签: resharper

如果我已正确阅读the documentation,则选中“从生成的文件中过滤结果”选项应该隐藏代码生成的文件,例如命令ReSharper.ReSharper_GotoFile的结果。这在我的解决方案中不会发生。

证据:ErrorController.generated.cs是代码生成的,应该被通配符* .Generated.cs和我手动配置的T4MVC文件夹捕获。不会发生:

Search window

配置和解决方案视图:

Search and navigation options Generated code options Solution view

我误解或配置错误的任何内容?

1 个答案:

答案 0 :(得分:1)

据我所知,文档有点误导,此设置仅影响搜索类型,而不是文件。如果启用此设置,请转到类型将过滤生成文件的结果。但这并不意味着类型不会出现。

例如,如果您在生成的文件中添加了一个类Foo,那么尝试导航到Foo仍将显示生成的文件的结果,因为这是唯一的结果,并且, ReSharper认为,如果你要求它,你应该得到它。但是,如果有多个结果,ReSharper将过滤掉生成的文件中的任何内容。

但是很难得到多个结果 - 你的项目中可以有多个Foo类,但它们会有不同的命名空间,所以它们会有所不同。这意味着此设置仅适用于部分类型。如果您有两个文件的部分类拆分,其中一个生成,那么尝试导航到该类只会导航到未生成的文件(关闭该选项会显示一个小菜单,询问您要显示哪个文件)。此外,ctrl +单击类名称不会在两个类声明之间进行交换(关闭选项会执行此操作)。

它似乎只影响类型 - 您可以导航到这些类中的符号,甚至是在生成的文件中定义的符号(同样,只有一个符号,因此不会被过滤)。这意味着此设置的范围实际上非常有限。