Compartir vía


MVC1006: Los métodos que contienen TagHelpers deben ser asincrónicos y devolver Task

Valor
Identificador de la regla MVC1006
La corrección es problemática o no problemática Problemático

Causa

Se definió un asistente de etiquetas dentro de una función Razor que se ejecuta de forma sincrónica

Descripción de la regla

La ejecución del asistente de etiquetas es asincrónica. Cuando se usa dentro de un método o una expresión lambda dentro de una página Razor, la función contenedora también debe declararse como asincrónica.

Tenga en cuenta el siguiente archivo cshtml:

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

asp-controller es un asistente de etiquetas y desencadenará esta regla.

Cómo corregir infracciones

Declare la función para que sea asincrónica y Task devuelva:

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

Cuándo suprimir las advertencias

No suprima las advertencias de esta regla.