【问题标题】:OWIN Self host - hook into begin request, end request eventsOWIN 自主机 - 挂接到开始请求、结束请求事件
【发布时间】:2015-01-01 05:02:46
【问题描述】:

在 ASP.NET OWIN 自宿主中,由于不需要 Global.asax.cs,如何挂钩 BeginRequest、EndRequest、Application Start 和 Application End 事件?

【问题讨论】:

    标签: c# asp.net owin asp.net-web-api2


    【解决方案1】:

    在 WebAPI 中,您可以为此使用 filters。您可以覆盖OnActionExecutingOnActionExecuted。如果您不想为每个控制器添加注释,则可以将过滤器添加为全局过滤器:

    GlobalConfiguration.Configuration.Filters.Add(new MyFilterAttribute());
    

    作为ApplicationStart 的替代品,您可以在OwinStartup 类中执行您的代码。不知道有没有类似ApplicationEnd的东西。

    【讨论】:

      【解决方案2】:

      在管道的开头添加一个简单的 owin 中间件来处理开始和结束请求。

      public class SimpleMiddleWare:OwinMiddleware
      {
          public SimpleMiddleWare(OwinMiddleware next) : base(next)
          {
          }
      
          public override async Task Invoke(IOwinContext context)
          {
              Debug.WriteLine("Begin Request");//Add begin request logic
              await Next.Invoke(context);
              Debug.WriteLine("End Request");//Add end request logic
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-07-13
        • 1970-01-01
        • 2018-02-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多