3

制作控制器时,将其分割的最佳方法是什么?什么是分离MVC控制器功能的最佳方式?

如果我有一个管理部分,它下面有一堆.ascx Web用户控件和几个.aspx页面。我应该有一个AdminController吗?或者我应该为每个管理员页面/网页用户控件设置一个控制器?

看起来好像负责单个页面的操作违背了MVC试图从Web窗体改进的一件事。但在同一时间,你不希望一个控制器为您的整个网站...

我明白控制器应该做什么,但一个单独的控制器应负责多少?分离控制者责任的最佳方法是什么?

谢谢
马特

回答

0

一个AdminController是一个不错的选择。控制器中的不同方法在管理功能集中具有不同的职责,在适当的时候具有不同的视图。

您可以在Nerddinner项目中看到这个分工。

2

完全是一个75%的答案,但作为一个非常灵活的答案,每个模型一个控制器,然后给它足够的灵活性来创建,读取,更新和删除该模型(最好保持界面在控制器之间一致并避免特殊除非绝对必要)。

这适用于所有情况,但不适用于所有情况!

REST是一个很好的考虑这个问题的框架。虽然下面的指南是针对轨道的方式,但很多概念应该更广泛适用http://www.softiesonrails.com/2007/3/28/rest-101-part-1-understanding-resources

相关问题