【发布时间】:2015-01-23 23:54:54
【问题描述】:
我创建了一个简单的“订单”表单,它在同一页面上包含“订单项目” - 使用 mvc / web api / odata 构建..
只是想知道其他人如何处理同一页面上的父子记录?
这就是它目前的工作方式,我想知道是否还有其他人有更好的想法?
- 当用户单击“添加新订单”按钮时,会添加一个带有“Active = 0”(临时记录)的新“订单”,我会显示新插入订单的编辑表单。
- 然后用户可以填写“订单”表单并将“订单商品”添加到订单中。
- 第一次保存“订单”后,我会通过设置“活动 = 1”来激活订单。
通过这种方式,我可以想到 2 个问题:
- 临时订单(未完成的订单)需要时常删除。
- 如果用户编辑现有订单并从订单中添加、编辑或删除“订单项目”,即使用户单击“取消”按钮且实际订单未保存,这也会立即修改订单。这里的问题是用户可能认为单击取消不会保存任何更改(包括他们已经进行的“订单项”更改 - 我希望这是有道理的!)。
这是我的意思的演示(注意:添加“订购商品”位尚未完成 - 但应该足以大致了解我在说什么): http://orders.mydevelopmentserver.com/myorders
【问题讨论】:
-
您的 UI 设计是否可以灵活地为 OrderItem 添加取消标志?这种方式更改为订单(添加/编辑订单项目)立即保存在数据库中。如果需要从订单中删除订单项目,用户可以编辑订单并从订单中删除订单项目。
标签: jquery asp.net-mvc asp.net-web-api odata