Comment transmettre des paramètres ou des chaînes de requête à la navigation supérieure dans _Layout.cshtml dans ASP.NET
P粉343408929
2023-09-01 10:01:28
<p>Dans mon contrôleur, j'ai trois paramètres. (GET:/Class/List)</p>
<pre class="brush:php;toolbar:false;">classe publique ClassController : Contrôleur {
liste publique ActionResult (string classCode = null, string className = null, List<string> semestre = null)
{ ... }
}</pré>
<p>Et j'ai eu ceci dans ma barre de navigation...</p>
<pre class="brush:php;toolbar:false;"><a class="nav-link text-dark" asp-area="" asp-controller="Class" ="Liste">Classes</a></pre>
<p>Je souhaite transmettre une valeur de paramètre semestre pour que le lien ressemble à <code>localhost/Class/List?semester=9&semester=1</code>. Merci! </p>
<p>J'ai essayé ViewBag et asp-route-id, mais j'ai échoué. </p>
Cela peut ne pas fonctionner car votre liste ActionResult attend une liste de chaînes. D'après mon expérience, une liste de chaînes nécessite généralement que vous parcouriez Model -> item.semester pour répertorier toutes les valeurs de la vue.
Vous pouvez essayer d'ajouter
List<string>
更改为单个string
.Ensuite, ajoutez ceci à la balise "a". Disons que vous remplissez un
Viewbag.semesterId
dans votre contrôleur.Vous pouvez essayer de convertir la liste en chaîne de requête. Opération :
A.cshtml :
Résultat :