ReSharper提供了多种功能,可用于获取代码的其他信息,选择和高亮显示结构化代码块以及应用局部代码转换。
ReSharper扩展了Visual Studio的默认高亮显示支持,能够以不同语言自定义代码项的高亮显示。 例如,您可以轻松区分代码中的局部变量和字段。 要开启ReSharper的高亮显示,请转到ReSharper | Options | Code Inspection | Settings,然后选择Color Identifiers。 每个项的自定义颜色可以配置。
ReSharper 的上下文操作可以对脱字符号处的代码快速进行小幅更改,让您避免许多输入操作 - 例如,您可以更改访问修饰符,生成检查 null 的代码,将 foreach
转换为 for
及反向转换 - 所有操作只需按几次键即可完成。 如果一个或多个上下文操作可用于当前脱字符号位置,ReSharper 会显示锤头图标 :您可以点击此图标或按 Alt+Enter 选择合适的操作。
此功能会插入必要的语法元素(大括号、分号,等等),并让您处于合适的位置以开始下一个语句,从而让您不会在脱字符号上花费过多精力。 工作时,请牢记此功能默认的快捷键为:Ctrl+Shift+Enter。
补全语句(也称为智能输入)可以在多种情况下解决问题;包括自动插入右括号,添加分号,补全if
、while
和for
语句,等等。
ReSharper 提供了丰富的工具来处理 C# 中的正则表达式。 您可以快速地分析现有的表达式,查找并修复错误。 在您输入新表达式时,ReSharper可以进行自动补全和验证。
您可以在菜单中选择ReSharper | Tools | Validate Regular Expression,输入各种示例字符串并查看您的正则表达式是否匹配这些字符串。 使用此对话框,您可以修复表达式,并确保您获得所需的匹配内容。
Visual Studio的这一部分IntelliSense在ReSharper中也得到了扩展。 在您调用方法时,Parameter Info会为您显示所有可用的方法签名和参数,并在工具提示中包含相关文档。 工具提示会在您输入时自动显示,或者您可以通过按Ctrl+Shift+Space显示它。 您在添加新参数时,ReSharper会灰显不兼容的任何签名。
在 C# 中,只要您在右小括号/中括号/大括号前后放置脱字符号,就会高亮显示匹配的左边字符,反之亦然(此选项可配置)。
在VB.NET中,将脱字符号放置于End Sub
或End Function
内部或之后的任意位置时,都会高亮显示匹配的Sub
或Function
。 只要您将脱字符号放置于左关键字内,就会高亮显示匹配的关键字和它的行(同样,您可以微调此功能)。
在XML中,匹配的标记会不明显地高亮显示,从而让您能够看到标记结构。
如果匹配的一段代码滚出屏幕,将出现相应的弹出窗口,方便您查看。
如果由于您忘记在源代码中发出相应的命名空间导入指令而无法解析类型名称,会出现一个小的弹出窗口来建议一个或多个要导入的类型。 只需按Alt+Enter,合适的命名空间导入指令将自动插入。 另外,您将不会丢失当前的脱字符号位置。
对于Web应用程序中的标记文件,ReSharper可以根据它们的用法自动导入用户控件(ascx文件)。
当您在编辑器中输入(
、[
、"
或'
时,会自动插入成对的字符(如适用)。 此功能很容易关闭,不过您不必担心会错误地插入过多的右小括号、中括号或引号:如果右括号或引号已经存在,ReSharper将不会添加第二个。
在XML中,在您输入左引号或中括号时,右符号将自动出现。
在编辑器中将脱字符号放置在任意行上(或者,分别选择块),然后按Ctrl+D,可以快速地复制此代码行(块)。
借助ReSharper,您可以通过按以下四个键快速更改代码元素的顺序:Ctrl+Shift+Alt+Up/Down/Left/Right。 特别是,您可以将成员上下移动,重新排列参数,在块内移动语句,将语句移出或移入块,将XML标记上下移动,将XML特性左右移动,等等。
要直接在编辑器中查看特定类、方法/函数或其他符号的文档,请将脱字符号放置在代码符号上,然后按Ctrl+Shift+F1。 文档会在弹出窗口中显示,其中包含其他资源的可点击链接,最主要的是MSDN文档。
在编辑器中选择任何代码块并按Ctrl+Alt+/(适用于行注释)或Ctrl+Shift+/(适用于块注释)可以立即注释或取消注释该代码块。
如果未选择代码块,您还可以使用Ctrl+Alt+/快速注释或取消注释编辑器中脱字符号所在位置的代码行。 在同样的情况下,按Ctrl+Shift+/会立即在脱字符号位置前后插入左块注释(/*
)和右块注释(*/
),如果脱字符号位于注释的代码块中,则会将它们移除。
Extend Selection功能可以帮助您连续选择扩大的代码块。 也就是说,您可以通过将脱字符号放置在代码中的某个位置,然后按几次Ctrl+Alt+Right,轻松地选择代码中的任何表达式。 Shrink Selection正好相反,可以通过按Ctrl+Alt+Left应用。
您也可以按Ctrl+Shift+[,快速选择脱字符号所在处的成员,甚至成员的包含类型。
如果您需要输入长字符串字面量,ReSharper会添加必要的引号和加号字符,帮助您将它们拆分成几行:当脱字符号位于字符串字面量中时,按Enter或Shift+Enter可以拆分字符串,而不会中断它的值。
ReSharper提供了一个特殊的粘贴命令(按Ctrl+Shift+V可以调用),借助此命令,您可以访问剪贴板历史记录并快速地将最近从Visual Studio中复制的任意项粘贴到剪贴板。 在您启动Visual Studio后, ReSharper会开始将复制的项记录到它的剪贴板历史记录中;在您关闭Visual Studio时,ReSharper会清除历史记录。
本页面提供的所有键盘快捷键都在 ReSharper 的默认“Visual Studio”按键映射中。 有关 ReSharper 两种按键映射的详细信息,请参阅 ReSharper 文档。