在Visual Studio 2013中查看一个标准的新MVC 5项目,您可以看到它现在包含OWIN。
有一个新的OWIN启动类配置auth但是我看不到/在哪里MVC5注册了OWIN。这是怎么发生的?
我假设在进入MVC管道之前,所有请求都通过OWIN。为什么还会包括OWIN?
>请注意:我不是问OWIN是如何设置的,这很容易在文档中解释。我对MVC5如何使用OWIN感兴趣。
解决方法
更新:我想出了为什么MVC5使用OWIN,即使请求由IIS管道而不是OWIN处理。
MVC5没有通过OWIN,但是看起来可能会在将来改变。相反,MVC目前仍然需要通过IIS集成管道。 OWIN包含在默认MVC项目中的原因是,MVC5可以使用Owin中间件组件。
从OWIN middleware in the iis integrated pipeline:
In order for an OMC to participate in this same,event-based execution
ordering,the Katana runtime code scans through the startup
configuration and subscribes each of the middleware components to an
integrated pipeline event.
由于Web.Api和MVC已经被组合并放弃了System.Web,因此在ASP.NET vNext中有所改变,有利于OWIN和项目Helios。