我很想知道是否有一些解决我问题的一般方法。让我们说我的一些操作期望传递Id参数,但在某些时候用户可能会尝试将ID参数的字符串分配给URL。因此,我们的操作不会被触发,并且在基类中抛出500异常。有没有办法解决这个问题,而是抛出404异常呢?
答案 0 :(得分:0)
你可以在路线上加上约束力。你可以在这里找到一个很好的教程
http://www.asp.net/mvc/tutorials/controllers-and-routing/creating-a-route-constraint-cs
然后输入一个字符串而不是id将与路径不匹配。
替代方法是在MVC / webapi中创建一个异常过滤器来处理所有异常并查找条件,或创建自定义路由处理程序。