剃刀模型绑定未通过

时间:2018-11-26 10:25:46

标签: c# asp.net-mvc razor

我有一个模型,其中包含2个模型列表。这两个列表都存在相同的问题,因此我将仅解释其中一个(我对每个列表都执行相同的步骤)。

一个列表是给客户的,它由许多字段组成(通过我正在与之交谈的第三方系统上的api提供,它必须是动态的,因为第三方可以通过它发送其他内容)

例如,对于客户,字段为: titlefirstnamelastnameaddressstatedobgender

在这些字段上,有许多属性可以帮助显示或不显示它们。就我而言,我们正在使用titlefirstnamelastnamedobgender

当我提交表单时,title,firstnamelastname的值会在模型中正确显示。但是dobgender的值不一样。它们出现在表单集合中,但未映射到函数中模型的列表中。

这里是如何将元素添加到页面的示例

(如果在for循环中遍历它们,请检查是否应在页面上使用它们,如果可以,我会看到它们是什么类型的字段(文本,下拉列表,日期等),然后将其添加到页面中)

    @Html.TextBoxFor(x => Model.CustomerFields[i].value, new { @class = "form-control", @placeholder = Model.CustomerFields[i].description, style = (Model.CustomerFields[i].visible ? "" : "display: none;") });
                                        @Html.HiddenFor(x => Model.CustomerFields[i].code)
                                        @Html.HiddenFor(x => Model.CustomerFields[i].description)
                                        @Html.HiddenFor(x => Model.CustomerFields[i].type)
                                        @Html.HiddenFor(x => Model.CustomerFields[i].readOnly)
                                        @Html.HiddenFor(x => Model.CustomerFields[i].visible)
                                        @Html.HiddenFor(x => Model.CustomerFields[i].lookupGroup)
                                        @Html.HiddenFor(x => Model.CustomerFields[i].customGroup)
                                        @Html.HiddenFor(x => Model.CustomerFields[i].sequence)

似乎在中断字段列表的顺序时,它不会传递它们。

我一直在四处搜寻和搜寻,无法找到任何可以解释正在发生的事情的信息。有人有什么想法吗?

0 个答案:

没有答案