IntelliCode 建议

当在代码中的多个位置进行类似的编辑时,可借助 IntelliCode 建议来实施编辑。 它会在本地跟踪你的编辑过程和内容并检测可重复应用的内容。 然后,它会提供相关建议,使你能够在可能适用的其他位置中应用这些编辑。 例如,如果你错过了可以应用重构的位置,IntelliCode 建议将帮助你找到这些位置并进行更正。

IntelliCode 知道代码的语义结构。 该结构用于检测可应用更改的情况,即使变量名称不同也能检测到。

假设要将一个使用硬编码本地值的重复性温度换算替换为能将这些值提取出来的 helper 函数。 IntelliCode 将检测你正在进行的重复更改,并建议你在其他位置进行此更改。

Illustration of suggestions showing how repeated edits lead to finding suggestions

建议在 Visual Studio 编辑器中显示为快速操作。 IntelliCode 建议具有“快速操作”菜单选项:“应用建议”和“忽略此类建议” 。 如果你想要使用建议的更改,请选择“应用建议”。

IntelliCode suggestions lightbulb

在 Visual Studio 2019 16.9 及更高版本中,你还会在完成列表中看到你键入的建议:

IntelliCode suggestions shown in completions list

由于 IntelliCode 建议会通过会话中的重复编辑进行学习,因此有时会提出不符合你意向的建议。 如果你不想使用建议的更改,只需选择“忽略此类建议”操作。 IntelliCode 不会再建议这类模式,除非你在后续编辑中重新创建了它。

注意

IntelliCode 建议是会话范围内的建议 - 在关闭并重新打开 Visual Studio 后不会显示

若要查看包含所有建议的更改的列表,请转到“视图”>“其他窗口”>“IntelliCode 建议” 。

提供多条灯泡建议

当你接受完成列表建议时,如果有可应用相同更改的其他位置,你将看到具有操作的灯泡,该操作将向你显示找到的建议的列表。 此操作会打开“IntelliCode 建议”窗口,可在其中查找建议并执行建议的操作。

IntelliCode suggestions discovery

禁用 IntelliCode 建议

针对 Visual Studio 16.7 及更高版本默认启用建议。

如果想要关闭建议,请选择“工具”>“选项”>“IntelliCode 常规”选项卡,然后将“C# 建议”切换为“已禁用” :