ASP.NET MVC Action 选择器

17 Mar 2025 | 阅读 2 分钟

Action 选择器是应用于控制器 Action 方法的属性。它用于根据请求选择要调用的正确 Action 方法。 MVC 提供了以下 Action 选择器属性

  1. ActionName
  2. ActionVerbs

ActionName

此属性允许我们为 Action 方法指定不同的名称。 当我们想用不同的名称调用 Action 时,它非常有用。

示例

在这里,我们使用 ActionName 属性为 index Action 方法应用不同的名称。 控制器代码如下所示

// MusicStoreController.cs

现在,我们需要在 MusicStore 文件夹中创建一个与 ActionName 相同的视图。 因此,我们创建了一个store.cshtml文件,其中包含以下代码。

// store.cshtml

输出

当 Action 以不同的名称“store”调用时,会产生以下输出。

ASP Action 1

ActionVerbs

ASP.NET MVC 提供了应用于 Action 方法并适用于 HttpRequest 方法的 Action 动词。 有多种 ActionVerbs,如下所示。

  • HttpPost
  • HttpGet
  • HttpPut
  • HttpDelete
  • HttpOptions
  • HttpPatch

ActionVerbs 是控制器处理的 http 请求的名称。 我们可以使用它在 Action 方法之间进行选择。

示例

在以下示例中,我们尝试通过 get 请求访问一个 index Action,该 Action 仅适用于 httpPost 请求。 控制器代码如下所示

// MusicStoreController.cs

以下是 MusicStoreController 的 Index 文件。

// index.cshtml

输出

调用 index Action 时,它会产生以下输出。

ASP Action 2

当我们对 store Action 方法发出 get 请求时,它会产生错误消息。

ASP Action 3