Afficher Oui / Non au lieu de la case à cocher dans la vue de ASP.Net MVC

Je suis très nouveau sur ASP.Net / MVC. J’ai créé une vue que je remplis à partir d’un modèle. Je crée des lignes pour chaque élément du modèle afin d’afficher leurs propriétés / atsortingbuts d’élément de modèle.

L’un des membres est un bool, le nom est Staged. Dans l’affichage, je souhaite l’afficher sous la forme Oui si vrai ou Non si faux. L’utilisateur ne pourra que le lire, un texte simple Oui / Non suffira.

J’utilise le code suivant dans le cshtml

 @Html.DisplayFor(modelItem => item.Staged)  

Cela montre cependant une case à la place, comment puis-je l’afficher comme Oui / Non?

Merci,

Vous pouvez utiliser une méthode d’extension d’aide HTML personnalisée comme celle-ci:

 @Html.YesNo(item.Staged) 

Voici le code pour ceci:

 public static MvcHtmlSsortingng YesNo(this HtmlHelper htmlHelper, bool yesNo) { var text = yesNo ? "Yes" : "No"; return new MvcHtmlSsortingng(text); } 

De cette façon, vous pouvez le réutiliser sur l’ensemble du site avec une seule ligne de code Razor.

utiliser Html.Raw et restituer la chaîne de manière conditionnelle en fonction de la valeur de modèle true / false

   @Html.Raw((Model.Staged)?"Yes":"No")  

Dans le modèle, vous devez créer une nouvelle propriété faisant quelque chose comme ceci …

 public ssortingng ItemStagedYesNo = (item.Staged) ? "Yes" : "No"; 

puis dans la vue, faites

 @Html.DisplayFor(modelItem => ItemStagedYesNo); 

Changement

  @Html.DisplayFor(modelItem => item.Staged) 

à

  @(item.Staged?"Yes":"No") 

C’est le moyen le plus simple de répondre à vos besoins.