如何将从我的业务层冒泡的异常消息强制转换为javascript中的警告框?
BTW,我正在使用ASP.NET MVC 1.0。
谢谢, 杆
答案 0 :(得分:0)
制作自定义操作过滤器属性并将其应用于操作方法。 在OnActionExecuted()的覆盖版本中,您必须将filterContext.Result设置为某些RedirectResult / RedirectRouteResult,以便在异常将其设置为EmptyResult时向浏览器返回任何内容。所以重定向到一些错误页面或控制器动作,它使用javascript为警报呈现html :)这是你可以开始的自定义ActionFilter属性:
public class ExceptionAlerterFilterAttribute: ActionFilterAttribute
{
public override void OnActionExecuted(ActionExecutedContext filterContext)
{
if(null!= filterContext.Exception && !filterContext.ExceptionHandled)
{
RedirectResult result = new RedirectResult(some_url_you_need_to_set);
filterContext.Result = result;
//yes, you have to set the ExceptionHandled to stop the error bubbling
filterContext.ExceptionHandled = true;
}
base.OnActionExecuted(filterContext);
}
}
有点乱,但我希望回答你的问题?