在 ASP.NET MVC 视图中成功绑定字典
将字典绑定到 ASP.NET MVC 视图可能会带来挑战,通常会导致表单提交后丢失初始值或 null 属性。本指南阐明了如何正确绑定字典,确保数据在视图和模型绑定过程中持续存在。
当使用模型中的预定义值初始化字典时,通常会出现问题。 标准 MVC 模型绑定器不直接支持此初始化方法。为了解决这个问题,我们必须在视图中利用索引器语法 property[key]
。
这是您观点的正确方法:
<code class="language-csharp">@foreach (KeyValuePair<string, string> kvp in Model.Params) { <tr> <td>@Html.Hidden("Params[" + kvp.Key + "]", kvp.Key)</td> <td>@Html.TextBox("Params[" + kvp.Value + "]")</td> </tr> }</code>
此更新的代码使用 @Html.Hidden
正确绑定键,并使用 @Html.TextBox
处理值,为每个键值对采用正确的索引器语法 Params[key]
。这确保模型绑定器在表单提交时准确地将提交的数据映射到 Params
字典。 密钥被隐藏以在提交期间保存。 该值公开供用户输入。
以上是如何在 ASP.NET MVC 视图中正确绑定字典?的详细内容。更多信息请关注PHP中文网其他相关文章!