AspNet MVC4 教学-13:Asp.Net MVC4 过滤器等技术快速Demo

 新建Basic类型的Project

1.Models目录下新建:

MyFilter.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace MvcActionFilter.Models
{
    public class MyFilter:ActionFilterAttribute
    {
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            filterContext.HttpContext.Session["temp"]+= "Before ActionExecute<br/>";
        }
        public override void OnActionExecuted(ActionExecutedContext filterContext)
        {
            filterContext.HttpContext.Session["temp"]+= "After ActionExecute<br/>";
        }
        public override void OnResultExecuting(ResultExecutingContext filterContext)
        {
            filterContext.HttpContext.Session["temp"]+= "Before ResultExecute<br/>";
        }
        public override void OnResultExecuted(ResultExecutedContext filterContext)
        {
            filterContext.HttpContext.Session["temp"]+= "After ResultExecute<br/><hr>";
        }
    }
}
2.HomeController.cs:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MvcActionFilter.Models;

namespace MvcActionFilter.Controllers
{
    public class HomeController : Controller
    {
        //protected override void OnActionExecuting(ActionExecutingContext filterContext)
        //{
        //    Session["temp"] += "Inner Before ActionExecute <br/>";
        //}
        [MyFilter]
        public ActionResult Index()
        {
            Session["temp"] += "IndexAction<br/>";
            return View();
        }

        [MyFilter]
        public ActionResult TestFilter()
        {
            Session["temp"] += "TestFilterAction<br/>";
            return View();
         }
        public  ActionResult Show()
        {
            Session["temp"] += "ShowAction<br/>";
            return View();
        }
    }
}

2.相关view:

Index.cshtml:

@{
    ViewBag.Title = "Index";
}

<h2>Index</h2>
@{
    Session["temp"] += "IndexView<br/>";
   
}    

@Html.ActionLink("TestFilter","TestFilter")

TestFilter.cshtml:

@{
    ViewBag.Title = "TestFilter";
}

<h2>TestFilter</h2>
@Html.ActionLink("Show","Show")
@{
    Session["temp"] += "TestFilterView<br/>";   
}    

Show.cshtml:

@{
    ViewBag.Title = "Show";
}

<h2>Show</h2>

@{
    Session["temp"] += "ShowView<br/>";
   
}    

 @Html.Raw(Session["temp"].ToString())



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gCodeTop 格码拓普 老师

您的鼓励.我的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值