【发布时间】:2014-01-23 14:31:24
【问题描述】:
我使用 Windows 身份验证在我的 MVC4 应用程序中添加了 Authorise attribute,在测试时我更改了活动目录组的名称以检查 Global.asax 类中的 Application_Error 方法是否会捕获非授权用户.
问题是没有捕获到异常,IIS express 抛出了 401 异常。这些类型的授权异常是否可以被捕获,如果可以,是否有更好的方法来处理 MVC 应用程序中的异常?
方法
全球 asax
protected void Application_Error()
{
System.Diagnostics.Debugger.Break();
}
IIS express 抛出 401 未授权异常
工作验证
使用此方法可行,但有点混乱。
if (User.IsInRole(@"DOMAIN\USER"))
{
if (ModelState.IsValid)
{
ctx.SaveChanges(model);
ViewBag.Notification = "Save Successful";
}
}
else
{
throw new HttpException(404, "Category not found");
}
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-4 exception