我非常喜欢ASP.NET MVC的工作方式。我希望在所有新的Web项目中实现它,但是在我设计的原型中遇到了一些问题,这个问题我还没有找到一个好的解决方案。所以我想问你,如果要设计一个不符合典型REST模式的MVC应用程序,你会如何设计?例如,我正在设计的原型将有几个页面,但这些页面本身并不一定绑定到域模型上。例如,一个简单的注册站点可能会有以下页面:
- /Default.aspx - /Register.aspx - /ThankYou.aspx
偶尔,这样的程序可能需要一个管理部分来处理诸如审核注册或查看数据等细节。在标准的ASP.NET Web应用程序中,我可能会添加以下内容:
- /Admin/Default.aspx - /Admin/ListRegistrations.aspx - /Admin/ViewReports.aspx
在这种情况下,是否将两个控制器设计成以下方式会违反MVC模式:
- Home->Index - Home->Register - Home->ThankYou - Admin->Index - Admin->ListRegistrations - Admin->Reports
我的困扰加剧了由于还没有真正的子控制器和区域的实现。我知道Phil Haack组织的“Areas”原型,但它并不是很成熟,而且说实话,我不确定我喜欢它的设置方式,但我也不知道我希望看到它如何工作。
我想,当我想到MVC时,我也会想到REST,并且具有表示页面而不是实际实体或操作的控制器操作并不适合我。你怎么看?
- /Default.aspx - /Register.aspx - /ThankYou.aspx
偶尔,这样的程序可能需要一个管理部分来处理诸如审核注册或查看数据等细节。在标准的ASP.NET Web应用程序中,我可能会添加以下内容:
- /Admin/Default.aspx - /Admin/ListRegistrations.aspx - /Admin/ViewReports.aspx
在这种情况下,是否将两个控制器设计成以下方式会违反MVC模式:
- Home->Index - Home->Register - Home->ThankYou - Admin->Index - Admin->ListRegistrations - Admin->Reports
我的困扰加剧了由于还没有真正的子控制器和区域的实现。我知道Phil Haack组织的“Areas”原型,但它并不是很成熟,而且说实话,我不确定我喜欢它的设置方式,但我也不知道我希望看到它如何工作。
我想,当我想到MVC时,我也会想到REST,并且具有表示页面而不是实际实体或操作的控制器操作并不适合我。你怎么看?