Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
asp.net-mvc关于何时将一个视图分解为多个视图的建议_Asp.net Mvc - Fatal编程技术网

asp.net-mvc关于何时将一个视图分解为多个视图的建议

asp.net-mvc关于何时将一个视图分解为多个视图的建议,asp.net-mvc,Asp.net Mvc,我正在为一个相当复杂的订单对象设计“创建”功能。在创建订单的过程中,用户必须选择接收者(通过人员搜索),为订单选择项目(同样,通过项目查找),并输入有关订单的其他详细信息 设计这个的最初想法是有几个显示/隐藏相应div的“tab”链接,在部分视图中有搜索功能,在两个div中重用,并使用ajax更新搜索结果,这样就可以创建整个订单,而无需向服务器发送多个帖子,只需使用一些ajax调用来获取数据,限制服务器上的负载 这似乎是ASP.NET的设计方式,我觉得这个创建过程应该被分成多个视图 你觉得怎么样

我正在为一个相当复杂的订单对象设计“创建”功能。在创建订单的过程中,用户必须选择接收者(通过人员搜索),为订单选择项目(同样,通过项目查找),并输入有关订单的其他详细信息

设计这个的最初想法是有几个显示/隐藏相应div的“tab”链接,在部分视图中有搜索功能,在两个div中重用,并使用ajax更新搜索结果,这样就可以创建整个订单,而无需向服务器发送多个帖子,只需使用一些ajax调用来获取数据,限制服务器上的负载

这似乎是ASP.NET的设计方式,我觉得这个创建过程应该被分成多个视图

你觉得怎么样?对于MVC模式中的一个视图来说,这是否变得太复杂了

谢谢

干燥(不要重复)

通常情况下,它并不真正涉及视图的复杂性(尽管这确实是一个因素),而是该视图的哪些部分/部分将/可以在其他位置使用?如果某个部分与站点的另一部分中的功能重复,请为其创建局部视图

编辑


看到下一个答案,我意识到我错过了你问题的制表符部分。我同意下面的海报,将标签分成部分视图。最有可能的是,让每个选项卡都是它自己在控制器上的操作和相应的局部视图结果是有意义的;如果建造起来很难,那么维护起来就更难了

作为起始点,将每个选项卡的内容视为单独的视图。页面的视觉组织可能是将功能和内容分离到单独视图中的一个很好的指南