代码100路由或使用通用路由和捕获路由错误

时间:2012-06-29 14:36:11

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

我在这里问了一个问题throw 404 error when route is not satisfied并得到了答案,我想:我选择的是一个好的设计,所以我决定将其作为一个单独的问题发布:

您认为什么是更好的解决方案:在我的网络应用程序中为每个页面硬编码100个路由,并且一个捕获所有路由以重定向到404页面,或者硬编码1个“通用”路由并捕获错误中的所有“错误”网址处理程序?

后者的“问题”是,当应用程序充斥着错误的网址时,应用程序将抛出(我总是阅读的昂贵)大量例外....

1 个答案:

答案 0 :(得分:1)

拥有太多路由效率也很低,特别是对于URL生成。你可以:

  1. 使用基本控制器并覆盖HandleUnknownAction,因此不会引发异常。
  2. 您可以对类似的路线进行分组,并为controlleraction令牌使用约束,而不是为每个操作创建路线。像MvcCodeRouting这样的工具可以帮助您实现自动化。