数据库脱机时在视图级别捕获错误

时间:2010-09-09 08:57:30

标签: asp.net-mvc

我几乎不好意思问这个问题,但是这里有。昨天我正在测试一个应用程序,该应用程序将在几个星期内投入生产,当时我的一个同事触发了一个不寻常的错误。基本上,她在数据库连接的同时迭代了IQueryable集合(在partialview内部)。现在,负责此操作的控制器有错误陷阱,我希望这会引发警告。然而,基本上发生的是黄色.net错误页面显示错误发生的行。现在,幸运的是,这仍然在测试中,所以我们可以进行必要的修改以解决这个问题,而且,这是一个真正的边缘情况,所以这种类型的错误可能永远不会发生。

但是,是否有人有解决方案来捕获此类错误并在此事件中呈现合理的404页面?或者控制器中有什么东西可能在我们的防御性编程和try / catch块中被忽略了?

希望有人在此之前越过这座桥,并以天赋离开...

1 个答案:

答案 0 :(得分:0)

如果我只关注错误和页面未找到处理,那么关于404处理有一些很好的问题,但在你的情况下,这不应该是404,它是500 - 真的不重要但是你仍然应该将这两者区分开来。对于这两个中的每一个,您都可以创建一个漂亮的自定义错误页面。

我在this问题中听取了cottsak的回答以及其他用户/评论者在同一问题中所做的更正。我认为这是一个比接受的答案更好的解决方案。

然而,可能是你正在处理一些不应该发生的事情。 “她拉动数据库连接”是什么意思?这可能意味着您的网站未正确设置以处理多个用户请求。我建议ASP.NET MVC应用程序中的“每个请求”数据库连接/数据库上下文范围。