Maison >développement back-end >C++ >Comment lier correctement les valeurs du dictionnaire dans ASP.NET MVC ?

Comment lier correctement les valeurs du dictionnaire dans ASP.NET MVC ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-10 11:00:46946parcourir

How to Properly Bind Dictionary Values in ASP.NET MVC?

Liaison réussie des dictionnaires dans ASP.NET MVC

Travailler avec des dictionnaires dans les modèles de vue ASP.NET MVC peut parfois présenter des défis. Des problèmes tels que des valeurs initiales manquantes dans la vue ou une propriété Params nulle après la soumission du formulaire sont courants. La clé pour résoudre ces problèmes réside dans la compréhension et l'application correcte de la syntaxe de liaison du dictionnaire.

Dans ASP.NET MVC 4 et versions ultérieures, le classeur de modèles attend un format spécifique pour la liaison du dictionnaire : property[key]. Cela signifie que les éléments d'entrée de votre vue doivent respecter cette syntaxe.

Voici l'approche corrigée pour le rendu et la liaison des valeurs du dictionnaire dans votre vue :

<code class="language-csharp">@foreach (KeyValuePair<string, string> kvp in Model.Params)
{
    <tr>
        <td>
            @Html.TextBox("Params[" + kvp.Key + "]")
        </td>
    </tr>
}</code>

Remarquez le changement crucial : Params[Key] est remplacé par la construction dynamique Params[" kvp.Key "]. Cela garantit que chaque élément d'entrée est correctement nommé avec la clé appropriée de votre dictionnaire. Un élément d'entrée nommé "Params[Value1]" sera désormais correctement mappé à la clé "Value1" dans le dictionnaire Params de votre modèle. Cette clé dynamique garantit une liaison appropriée des données lors de la publication.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn