ReSharper 2025.2 Help

智能补全

此命令会过滤类型、方法和变量列表,以匹配表达式的预期类型。 只要 ReSharper 能确定表达式的预期类型,它就可以在任何地方工作,例如赋值语句的右侧、变量初始化器或 return 语句。 如果可能有多个返回类型,ReSharper 会检测最近使用的适用类型符号,并在查找列表中自动选择它。 类型匹配补全还可以建议创建匿名委托、lambda 表达式和常规方法,以及用于 out 参数的局部变量。 此外,在对象初始化器中,类型匹配补全会建议尚未分配值的字段/属性。

默认情况下,C# 和 VB.NET 中的智能补全项包含在 自动基本 补全的建议列表中。 If you want to change the default behavior, use the corresponding controls on the 环境 | IntelliSense | 完成行为 page of ReSharper 选项 Alt+R, O .

调用智能补全

  1. 将插入符号放置在您准备输入代码的位置。

  2. Control+Shift+Space

  3. 从列表中选择一个建议,然后按下 输入 ,或者开始输入标识符的首字母或其 CamelHumps 缩写以缩小建议列表。

当您在现有代码项上使用代码补全时,您可以通过按下 输入 插入 所选的补全建议到现有项之前,或者通过按下 标签页 替换 现有标识符为所选建议。 If necessary, you can change the default shortcuts on the Environment | IntelliSense | Completion Characters page of ReSharper 选项 Alt+R, O .

当您使用键盘在补全列表中选择项目时,选择会在最后一个项目和第一个项目之间跳转。 您可以通过清除 在列表两端循环选择 来禁用此行为,该选项位于 ReSharper 选项 的 环境 | IntelliSense | 补全外观 页面 Alt+R, O

完成方法调用

从补全列表中选择方法调用时,默认情况下 ReSharper 会自动插入一对括号 ( ) 并将插入符号置于括号之间。 You can change this behavior with the 补全后自动插入括号 option on the 环境 | IntelliSense | 完成行为 page of ReSharper 选项 Alt+R, O .

请注意,当补全列表中选择了一个方法时,您可以输入左括号 来代替 标签页 输入 。 在这种情况下,无论此选项如何,都会插入一对括号。

从补全建议中排除类型和命名空间

您可能希望某些类型或命名空间不被建议,例如,如果您的解决方案中有类似于系统类型的内容,例如 MyFramework.MyCollections.List ,但实际上并未使用它。 To exclude such items from the suggestions, add them to the 从导入和补全中排除 list on the 代码编辑 | 类型导入 page of ReSharper 选项 Alt+R, O .

条目的格式为 Fully.Qualified.NameFully.Qualified.Name.Prefix**Fully.Qualified.Name.Suffix。 泛型类型的指定格式为 List`1

智能补全示例

您可以使用以下示例来了解智能类型匹配补全如何与各种代码项配合工作:

在 return 语句之后

ReSharper:return 语句后的智能补全

在赋值语句的右侧

ReSharper:赋值语句右侧的智能补全

在类型转换表达式中

在此之前:

ReSharper:类型转换表达式中的智能补全

启动类型匹配补全后(由于在此情况下只有一个选项,ReSharper 会直接插入预期类型而不显示列表):

ReSharper:类型转换表达式中的智能补全

在对象初始化器中

ReSharper 提供类型匹配补全,用于设置尚未为特定对象设置的对象初始化器中的属性:

ReSharper:对象初始化器中的智能补全

在 lambda 表达式中

除了传统的匿名和命名方法外,类型匹配补全还可以轻松生成 lambda 表达式语法:

ReSharper:lambda 表达式中的智能补全

创建局部变量以替代 out 参数

ReSharper:智能补全。 创建局部变量以替代 out 参数

使用 CamelHumps

ReSharper:智能补全。 使用 CamelHumps

此功能在以下语言和技术中 受支持

语言:C#

语言:VB.NET

语言:C++

语言:ASP.NET

语言:Razor

语言:XAML

语言:Resx

语言:构建脚本

语言:SQL

此功能在 C# 中可用

此功能在 Visual Basic 中可用

此功能在 C++ 中可用

此功能在 ASP.NET 中可用

此功能在 Razor 中可用

此功能在 XAML 中可用

此功能在资源文件中不可用

此功能在构建脚本文件中不可用

此功能在 SQL/NoSQL 文件和注入中不可用

此处提供的说明和示例针对在 C# 中使用该功能。 有关其他语言的更多信息,请参阅 语言和框架 部分中的相应主题。

最后修改日期: 2025年 9月 27日