dotnetbrowser内置了过滤器,所谓过滤器,就是实现了Action前后拦截,请看下例:
1、增加目录Filters,在该目录下增加新的过滤器PerformanceFilter,代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
public class PerformanceFilter : Filter
{
public override bool Before(Controller controller)
{
controller.Response.Write( "action即将执行,当前时间为:" + DateTime.Now.ToString() + "<br>" );
return true ;
}
public override void After(Controller controller, ActionResult result)
{
controller.Response.Write( "<br>action执行完毕,当前时间为:" + DateTime.Now.ToString());
}
}
|
2、在UserController.cs里加入以下代码:
1
2
3
4
5
|
[PerformanceFilter]
public void TestFilter()
{
Response.Write( "action 执行中..." );
}
|
3、按F5,输入以下地址,可以看到如下效果:

总结:您可以看到,过滤器可以在action前后执行,注意,before方法如果返回false,那么action以及after方法都不会被执行。
|