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 特定的导航操作,可以从标记文件转到它引用的任何文件,包括代码后置文件、主页面、用户控件、图像、JavaScript 与 CSS 文件、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还为JavaScript符号提供了代码补全。

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 文档