【发布时间】:2012-09-07 23:30:11
【问题描述】:
如果被问了很多次,请不要打我。
我看过很多关于如何使用 MVC 编辑实体的精彩演示。他们希望我的编辑表单只包含 3 个字段,这些字段当然是可编辑的,因此能够在客户端和服务器之间轮换数据,直到用户最终输入正确的值。但我的应用程序有点复杂,我需要您的建议。
1) 我有一个实体 Product 具有字段 Name 和 CreatedBy
2) 唯一可编辑的字段是名称
3)如果输入不正确,我需要用最好的方式重新填充不可编辑的字段
为此,我需要从 repo 中检索业务对象并将缺失值分配给生成的视图模型。可以有很多值。我应该逐步分配它们吗?我应该使用(尝试)UpdateModel 吗?我应该使用 AutoMapper(从未尝试过)之类的东西来指定如何相互更新实体吗?为此使用了哪些常用方法?请对包含 3 个以上可编辑字段的编辑表单提供任何链接...谢谢!
【问题讨论】:
-
我不明白你说“如果输入不正确,我需要用最好的方法重新填充不可编辑的字段。”这是否意味着您的不可编辑字段在视图中存储为隐藏字段?将您的观点和您希望在表单提交或其他方面实现的目标发送给我。
-
它们不存储在隐藏中,但如果模型无效,那么我需要向用户返回一个包含可编辑和不可编辑值的视图。在控制器中我只得到可编辑的,我需要自己设置其他的。
标签: asp.net-mvc model-view-controller