运行asp.net mvc程序后,就能通过相应的地址访问不同的也面,asp.net mvc 应用程序中,应用程序中页面的url并不是 服务器中实际存在的页面或者目录,而是访问了相应的方
法,asp.net mvc 应用程序通过 global.ascx 和controller实现 url 映射 。
asp.net mvc 工作原理:
当用户访问 http://localhost:2448/home/about 页面时,首先请求会发送到controller中, controller 通过global文件中的路由设置进行相应的 url 映射。
mvc 特性:
1 全局的 action 过滤器:
mvc 2 中提供 过滤器,允许对特定的 action方法 进行处理,实际上有时候你希望对所有的action进行类似的处理,mvc 3 中允许将过滤器 添加到globalFilter中创建全局 过滤器。
例如 错误处理页面过滤器
过滤器 继承 HandleErrorAttribute ,重新 OnException 方法
public class MyHandleErrorAttribute : HandleErrorAttribute
{
public override void OnException(ExceptionContext filterContext)
{
filterContext.ExceptionHandled = true;
filterContext.Result = new RedirectResult("/Shared/CError");
}
}
在global 文件中:
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new MyHandleErrorAttribute());//对所有的action错误页面进行注册
}