如何在ASP.NET MVC中跨多个视图创建深层嵌套对象?

时间:2014-05-08 03:12:53

标签: asp.net asp.net-mvc

这是关于ASP.NET MVC中的网站设计的问题。我有一个三层深度的对象图。假设有一个Container对象有多个Box,每个Box有多个Capsule。盒子和胶囊具有足够的属性,每个人都应该拥有自己独立的视图。这里的问题是当我处于创建的情况时,如何在多个请求中传播这些对象的视图,并且仍然允许用户在单个事务中保留顶级Container对象?请注意,用户在一次操作中创建Container及其所有嵌套子级,此时没有任何ID。

用户的体验应该是:点击"创建容器"链接,到达包含所有容器字段的页面和一个Box名称或ID的(空)列表,其中包含"添加框"下方链接。单击添加框链接应该将用户带到Box详细信息页面,其中包含Box级别字段和Capsule名称/ ID列表,以及Add Capsule链接,并且该过程会重复。

随便想到的技巧是:

  1. 将其实现为单个页面,我们在其中显示Box / Capsule条目表单,并将数据保存到根据约定命名的列表中的隐藏字段中。换句话说,在前端模拟单独的详细页面体验。

  2. 使用TempData或其他东西将父对象传递给子项的详细信息页面,并在用户输入子数据时再次返回。

  3. 这些对我来说都不是特别好的选择,我相信这里有一些基本的东西,我只是缺少。提前感谢您的帮助。

0 个答案:

没有答案