在ASP.NET OWIN自托管中,由于不需要Global.asax.cs文件,你如何挂钩BeginRequest、EndRequest、Application Start和Application End事件?
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
}
}
OnActionExecuting
和OnActionExecuted
。如果您不想注释每个控制器,您可以将您的过滤器添加为全局过滤器:GlobalConfiguration.Configuration.Filters.Add(new MyFilterAttribute());
ApplicationStart
,您可以在 OwinStartup
类中执行您的代码。我不知道是否有类似于 ApplicationEnd
的东西。