ASP.NET、ASP.NET MVC和ASP.NET Core工具

ReSharper可以使用一整套代码分析、编码辅助、导航与代码生成功能帮助您高效地处理ASP.NET和ASP.NET MVC项目,包括标记文件。 其中一些功能在Web应用程序中的运行方式与它们在C#或VB.NET项目中的运行方式完全一样,其他功能则针对Web开发的特定要求进行了优化。

ReSharper针对ASP.NET的代码检查和快速修复

代码检查与快速修复

无论您何时处理 ASP.NET 标记和代码隐藏文件中使用的 C# 代码,都能利用 ReSharper 的全部功能,包括全部的代码检查快速修复。 此外,还有一些特定于ASP.NET的代码检查和快速修复:例如,ReSharper可以检测aspx页面中未使用的导入命名空间、未知符号和实体。

也可以在 ASP.NET 标记文件中使用标记栏和状态指示器,从而帮助您导航 ReSharper 发现的代码问题。

使用ReSharper的上下文操作转换ASP.NET代码

上下文操作

ReSharper 提供了大量的上下文操作来帮助您应对常见的 ASP.NET 标记场景。

例如,借助ASP.NET上下文操作,您可以替换、折叠或移除标记;转换HTML实体;创建事件、函数和属性;插入表格列与行;添加代码隐藏文件。

.aspx文件的文件结构

导航和搜索

ReSharper 的导航功能包中的大多数功能都可以在 ASP.NET 中使用。

例如,如果您想概括了解当前打开的 aspx 文件中的标记项,请按 Ctrl+Alt+F,显示 File Structure 工具窗口。 您也可以使用文件结构派生,例如 Go to File MemberGo to Next/Previous Member和“Go to Containing Declaration”。

其他可以在 ASP.NET 项目中派上用场的导航操作包括 Go to Declaration(特别适用于从引用导航到用户控件和主页面)和Go to Usages of Symbol(用于从 ContentPlaceHolder 标记导航到它们的 Content 对应项,或从主页面引用导航到使用它的任何 Web 表单)。

从标记文件导航到它引用的任何文件

Go to Related Files

Go to Related FilesCtrl+Alt+F7)是一种 Web 特定的导航操作,可以从标记文件转到它引用的任何文件,包括代码隐藏文件、主页面、用户控件、图像、ASP.NET MVC 视图与控制器。

ASP.NET MVC视图中的语法高亮显示

语法高亮显示

当您使用 C# 或 VB.NET 在 aspx 页面中内联代码渲染块时,ReSharper 的语法高亮显示可以帮助您实现以下操作:

ASP.NET的代码模板

代码模板

ReSharper 让 ASP.NET 和 ASP.NET MVC 开发者可以使用捆绑的 20 个 Web 特定的模板生成 Web 表单、标记和特性:

  • 面向 ASP.NET 的实时模板Ctrl+E、L)可以加快新控件、脚本块、标记和特性的创建速度。
  • 包围模板Ctrl+E、U)可以使用标记、链接或 foreach 块包围文本或代码。
  • 文件模板Ctrl+Alt+Ins)可以帮助创建新的 Web 表单、用户控件和主页面。
在ASP.NET中生成事件订阅方法

代码生成

ReSharper能够基于被引用的主页面中定义的ContentPlaceHolder标记在标记页面中生成Content标记。

另一个功能是在ASP.NET代码隐藏文件中生成事件订阅方法。

您可以在编辑器中按 Alt+Ins,调用这些方法以及当前上下文中可用的常用 C# 和 VB.NET 代码生成功能

ReSharper在ASP.NET中的代码补全

代码补全

代码补全(包括智能补全)适用于标记名称和特性值。 导入符号补全可以帮助您引用非导入用户控件,无需提前注册这些控件:ReSharper 将自动生成 Register 指令。

ReSharper可以在ASP.NET中自动注册用户控件

自动导入和自动注册

对于自动注册,ReSharper 会在您使用用户控件后尽快自动注册控件,并在您使用属于命名空间的类型后自动导入任何命名空间,就像在其他类型项目中的操作一样。

重新排列ASP.NET代码

其他编码辅助

ReSharper 会在您输入开始标记后尽快自动插入匹配的结束标记,或者在您为特性值输入左引号后自动插入右引号。 此外,当您将脱字符号置于任意分隔符上时,它们的匹配分隔符会高亮显示

如果您有深度嵌套的标记层次结构,可以使用扩大/缩小选择调整选择范围。 作出选择后,您可以将其向上/向下移动(标记)或向左/右移动(特性)。

ASP.NET中的国际化辅助

国际化

如果您的aspx页面中有需要本地化的HTML标记,则可以选择标记,按Alt+Enter,然后将字符串移动到资源文件中。 不过,这只是 ReSharper 国际化功能的很少一部分而已。

ASP.NET MVC视图中的ReSharper功能

ASP.NET MVC支持

ReSharper提供了一组特定于ASP.NET MVC项目的功能。

除了上面介绍的功能和帮助您在控制器中编写代码的常用 C#/VB.NET 支持外,您还可以在操作与控制器之间导航,利用可以感知字符串字面量中操作引用的特殊语法高亮显示代码补全,从用法创建操作与控制器,以及在 aspx 和 Razor 视图引擎中执行更多操作。

ASP.NET Core中的ReSharper功能

ASP.NET Core支持

ReSharper 可以理解 ASP.NET Core 项目中的项目引用和标记帮助程序语法,并提供了核心功能,包括:重构代码检查导航代码补全。 还为 Visual Studio 2015、2017 与 2019 中的 .NET Core 单元测试提供了单元测试辅助

快捷键注释

本页面提供的所有键盘快捷键都在 ReSharper 的默认“Visual Studio”按键映射中。 有关 ReSharper 两种按键映射的详细信息,请参阅 ReSharper 文档