在ASP.NET MVC应用程序中创建项目和用户记录的工作流程

时间:2010-03-09 16:50:41

标签: c# asp.net-mvc rest workflow

我有一个具有Projects表和Users表的应用程序。在我的创建新项目表单中,我有一个项目经理的必填字段。但是,项目管理器的用户记录可能尚不存在。项目经理是必填字段。

到目前为止,我一直在“一屏,一个记录”的基础上开发应用程序,但这种情况需要用户首先创建用户记录(因为项目经理是必填字段),然后创建项目记录并将新用户指定为项目经理。

直观地说,用户希望首先创建项目,但这需要三个步骤(项目创建,用户创建,将用户分配为项目经理),并且必须锁定它们因为项目经理是必填字段,所以应用程序仍然必须足够聪明才能使用现有的用户记录(如果可用)。

您将使用什么策略?您是否将所有内容放在一个表单上(包括可选的新用户)并将复杂的ViewModel推送到控制器方法,或者您将采用多步骤表单策略,还是会执行其他操作?我在New Project表单上考虑过像New User弹出窗体这样的东西,但感觉有点过于聪明,而且还不够RESTful。

2 个答案:

答案 0 :(得分:0)

在这种情况下,我认为在“新建项目”表单的“项目管理器”下拉列表中包含“创建新用户”选项是合理的。如果选择此选项,将向用户显示“新用户”表单,并可以在项目的同时添加项目经理记录。

如果您的视图和ViewModel完全隔离,您可以使用AJAX将新用户表单部分加载到New Project表单中。这样,您可以保持您的Views,Models和ViewModel自包含,同时仍然提供良好的用户体验。

答案 1 :(得分:0)

类似行为的向导可能是最友好的用户。如果需要,您可以跳过无用的步骤。