asp.net-mvc – MVC4 Razor – @ Html.DisplayFor没有绑定到模型

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – MVC4 Razor – @ Html.DisplayFor没有绑定到模型前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图用MVC4剃须刀找到我,我被困在这个简单的问题。

当我使用@ Html.DisplayFor模型总是发回为NULL,但是当我使用@ Html.TextBoxFor这个模型是完全填充的,我缺少什么?

提前致谢

解决方法

这是许多人在asp.net mvc框架中错过的常见问题。不只是帮助者的区别,例如HiddenFor,DisplayFor,TextBoxFor – 但是框架如何设置自动收集和验证这些输入。魔术都是用HTML5的data- *属性完成的。您将注意到,在查看生成的输入标记时,将以数据val,数据val需要的形式存在一些额外的属性,也可能会出现类型的一些附加数据属性,例如数字将是数据val -数。

这些数据属性允许jQuery扩展jquery.validate.unobtrusive.js解析DOM,然后确定哪些字段验证或生成错误消息。

发布的数据的实际收集反映在name属性中。这是应该映射到c#或vb [HttpPost]方法中的模型。

当您要提供用户不需要注意的发布数据时使用HiddenFor。

当要显示记录但不允许编辑它们时,请使用DisplayFor。

当您想允许用户输入或允许用户编辑字段时,使用TextBoxFor。

编辑

“这个观点的目的是让用户在将数据提交到数据库之前查看数据。有什么想法可以实现吗?”

您可以用HiddenFor和DisplayFor的二重奏来完成此任务。使用HiddenFor使值可以被发布,并且DisplayFor显示这些值。

猜你在找的asp.Net相关文章