设计ASP MVC路由 - 使用分页和过滤列出特定对象的子对象

时间:2010-11-29 21:17:40

标签: asp.net asp.net-mvc routing

我一直在研究从ASP DOTNET移植到ASP MVC的内部网Web应用程序的可行性。我还没有决定这种框架是否适合该应用程序。

一个考虑因素是路由的样子......

该应用程序的主要用途是CRUD 7种主要类型的对象,例如,它们包括客户,位置和人员的表示。顾客可以有多个位置(< 10),每个位置可以有许多人(可能是1000)。页面将关注特定对象的细节或编辑(通常通过多页向导 - 另一个帖子),或者与特定对象(例如客户)相关的对象集(例如人)的列表(通过过滤)

考虑到客户,除了CRUD之外,我还希望能够列出与特定客户相关的各种对象(如位置和人员),对其进行分页,以及通过文本框中的某些属性或关键字对其进行过滤。目前,要查看客户的人员,您可以访问/ customer?guid = 1234#人员,其中包含所有人员的RadControls数据网格(大请求但带宽不是瓶颈)。

那么你会推荐哪些路线?

易于:
客户/编辑/ [GUID]

哈德:
客户/列表/ [GUID] /人/ [页]过滤器= XYZ&安培; paramX = YZ

客户/列表/人/客户= GUID和放大器; ...
或者......

2 个答案:

答案 0 :(得分:0)

对你和你的团队做有意义的事情。

答案 1 :(得分:-1)

如果您的网址更改没有问题,那么您可以查看一下REST风格的网址,了解您提供的功能(即使您没有返回Xml或JSON)。

客户/人/ GUID / XYZ / YZ /

尽管如此,您最后提供的选项更好,因为它比前一个更直观。

我应该补充一点,您也可以在ASP.NET Webforms应用程序中使用ASP.NET路由。因此,无需在ASP.NET MVC中重新编写应用程序。

如果您习惯使用WebForms控件,那么最好使用WebForms。