Asp.net mvc 在输出缓存模块触发之前触发模块

Asp.net mvc 在输出缓存模块触发之前触发模块,asp.net-mvc,asp.net-mvc-4,caching,httpmodule,outputcache,Asp.net Mvc,Asp.net Mvc 4,Caching,Httpmodule,Outputcache,我正在使用asp.net mvc输出缓存,遇到了一个问题 我正在使用构建自定义字符串的客户实现覆盖全局asax中的GetVaryByCustomString方法。基于此字符串的构建基于插入到另一个httpmodule的httpcontext中的数据 我遇到的问题是OutputCacheModule在将值放入httpcontext之前被激发-这是在另一个httpmodule中完成的 在outputcache模块执行之前,是否有任何方法可以触发不同的httpmodule 或者我的情况还有其他解决方法

我正在使用asp.net mvc输出缓存,遇到了一个问题

我正在使用构建自定义字符串的客户实现覆盖全局asax中的GetVaryByCustomString方法。基于此字符串的构建基于插入到另一个httpmodule的httpcontext中的数据

我遇到的问题是OutputCacheModule在将值放入httpcontext之前被激发-这是在另一个httpmodule中完成的

在outputcache模块执行之前,是否有任何方法可以触发不同的httpmodule


或者我的情况还有其他解决方法。

尝试按照.net管道()执行事件的顺序对事件进行排序

例如,您可以使用BeginRequest事件,这是要引发的第一个事件:

public class MyModule : IHttpModule
{
    public void Init(HttpApplication context)
    {
        context.BeginRequest += context_BeginRequest;            
    }

    void context_BeginRequest(object sender, EventArgs e)
    {
        var application = (HttpApplication)sender;
        var context = application.Context;

        // do something
    }

    public void Dispose()
    {
    }
}

对模块进行重新排序怎么样?