MVC1006 : Les méthodes contenant des TagHelpers doivent être asynchrones et renvoyer des Task

Value
Identificateur de la règle MVC1006
Le correctif est cassant ou non cassant Rupture

Cause

Un tag helper a été défini à l’intérieur d’une fonction Razor qui s’exécute de manière synchrone

Description de la règle

L’exécution de Tag Helper est asynchrone. Lorsqu'elle est utilisée à l'intérieur d'une méthode ou d'une lambda dans une page Razor, la fonction qui la contient doit également être déclarée comme étant asynchrone.

Considérez le fichier cshtml suivant :

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

asp-controller est un tag helper et déclenche cette règle.

Comment corriger les violations

Déclarer que la fonction est asynchrone et que la tâche est renvoyée :

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

Quand supprimer les avertissements

Ne supprimez pas un avertissement de cette règle.