【发布时间】:2015-04-24 18:10:55
【问题描述】:
我有一个ViewModel,它有 8 个属性,其中 6 个是复杂类型。我必须将它们显示在 3 组中,最后将所有数据保存到数据库中。现在,我为此创建了两个方法,第一个将用HttpGet 装饰,第二个用HttpPost 装饰。我已经在一个.cshtml 中创建了所有这三个组。第一次,只有第一组可见。在点击 NEXT 按钮后,我将在 Javascript/Jquery的帮助下使第二组可见,而第一组将不可见>。然后第三组将可见。并且在最后一部分中必须出现提交按钮。单击此按钮后,我会将整个模型发布回操作方法。但是,在这种情况下,我有两个问题:
- 我必须通过客户端验证仅验证可见字段
- 如果客户端验证以某种方式通过而服务器端没有通过,那么我必须找到并显示未验证的部分。
所以,为了解决这些问题,我决定两个创建四个动作方法,它们会将视图模型发布回另一个。 为了清楚起见,我想这样展示:
- 创建视图模型
[HttpGet] - 转到第二部分
[HttpPost] - 转到第三部分
[HttpPost] - 保存到数据库
[HttpPost]
1 会将我的 viewmodel 实例返回到 2,然后 2 会将其发布到 3,然后 3 会将其发布到 4。
这是好方法吗?如果没有,你会推荐我什么?
【问题讨论】:
-
有趣的问题,但因为您似乎有一个可行的解决方案,我想知道它是否更适合 CodeReview SE?
-
这可能会有所帮助c-sharpcorner.com/UploadFile/4b0136/… 我会推荐向导方法
-
@xDaevax 这是关于 CR 的题外话,没有要审查的工作实现,必须在问题中发布。
-
@Hosch250 确实如此。我假设作者可以提供这些细节。尽管我认为在此处包含该详细信息对于 this 站点来说是题外话。
-
@xDaevax "How should I do x" with a working implementation 对于 SO 来说不是题外话。此外,问题可以在多个站点上成为主题。使用代码,这将非常适合 CR,但这并不意味着它会使其脱离 SO。
标签: c# asp.net-mvc asp.net-mvc-4 razor