AspNetCore.Docs/aspnetcore/diagnostics/mvc1006.md

1.3 KiB

title description author monikerRange ms.author ms.date no-loc uid
MVC1006: Methods containing TagHelpers must be async and return Task Learn about analysis rule MVC1006: Methods containing TagHelpers must be async and return Task pranavkm >= aspnetcore-3.1 riande 10/22/2021
Home
Privacy
Kestrel
appsettings.json
ASP.NET Core Identity
cookie
Cookie
Blazor
Blazor Server
Blazor WebAssembly
Identity
Let's Encrypt
Razor
SignalR
diagnostics/mvc1006

MVC1006: Methods containing TagHelpers must be async and return Task

Value
Rule ID MVC1006
Fix is breaking or non-breaking Breaking

Cause

A tag helper was defined inside a Razor function that executes synchronously

Rule description

Tag Helper execution is asynchronous. When used inside a method or a lambda within a Razor Page, the containing function must also be declared to be async.

Consider the following cshtml file:

void Helper(string controller)
{
    <a asp-controller="@controller">Home</a>
}

asp-controller is a tag helper and will trigger this rule.

How to fix violations

Declare the function to be async and Task returning:

async Task Helper(string controller)
{
    <a asp-controller="@controller">Home</a>
}

When to suppress warnings

Do not suppress a warning from this rule.