假设我有一个要显示的订单列表。我想让用户能够显示所有订单,来自某个状态的所有订单,以及来自某个类别的所有订单。这些中的每一个都可以按日期范围进行过滤。
不用担心路由,我可能只在查询字符串中添加每个:
/orders?State=TX&Category=Books&DateRange=Yesterday
虽然我可以轻松完成这项工作,但它并不“感觉”这是正确的 MVC 做事方式。
我可以有看起来像这样的路线:
/orders/
/orders/state/{state}
/orders/category/{category}
/orders/state/{state}/category/{category}/
/orders/state/{state}/category/{category}/Date/{date-range}
但我仍然想支持每个不存在的过滤器。有没有更好的方法来处理这个问题,还是我只是在想整个事情?
如果我只使用 URL 路径,则不清楚如何创建这些路由而不只是为我想要的所有组合重复它们(状态、无类别、日期、状态、无类别、无日期、无状态、类别、日期等)