具有在processrequest中选择动作和控制器的逻辑

时间:2017-06-12 09:34:15

标签: c# .net asp.net-mvc asp.net-mvc-5 actionmethod

我在自定义mvc处理程序中有一个processrequest方法。

我喜欢根据requestcontext呈现特定的操作。

以下是我的代码

     public void ProcessRequest(HttpContext context)
    {
       if(Request.QueryString["lid"]!=null && ...){
        IController controller = new ListHell.Controllers.ErrorController();

        var routeData = new RouteData();
        routeData.Values.Add("controller", "Error");
        routeData.Values.Add("action", "Ops");

        var requestContext = new RequestContext(
             new HttpContextWrapper(Context), routeData);
        controller.Execute(requestContext);}
    }

在processrequest中我试图调用controller.execute方法。但是我收到的错误是Context没有在当前上下文中定义。

基本上我尝试在请求命中请求操作之前根据查询字符串或cookie值运行特定操作。我怎样才能做到这一点?我相信我需要在mvcHandler中执行逻辑。请以正确的方式纠正我,我可以效仿吗?

谢谢

0 个答案:

没有答案