Asp.net-Mvc-5
OWIN 是否呼叫 MVC(ASP.NET MVC)?
查看 Visual Studio 2013 中的標準新 MVC 5 項目,您可以看到它現在包含 OWIN。
有一個新的 OWIN Startup 類可以配置身份驗證,但是我看不到 MVC5 是如何/在哪裡註冊到 OWIN 的。這發生在哪裡?
我在這裡假設所有請求在進入 MVC 管道之前都通過 OWIN。他們為什麼還要包括 OWIN?
- 請注意:我不是在問如何設置 OWIN,這在文件中很容易解釋。我對 MVC5 如何使用 OWIN 很感興趣。
更新:我弄清楚了為什麼 MVC5 使用 OWIN,即使請求是由 IIS 管道而不是 OWIN 處理的。
MVC5 不通過 OWIN,但看起來這在未來可能會改變。相反,MVC 目前仍然需要通過 IIS 集成管道。OWIN 包含在預設 MVC 項目中的原因是 MVC5 可以使用 Owin 中間件組件。
為了讓 OMC 參與同樣的基於事件的執行排序,Katana 執行時程式碼會掃描啟動配置並將每個中間件組件訂閱到集成的管道事件。
這在ASP.NET vNext中確實發生了變化,因為 Web.Api 和 MVC 已被合併並放棄 System.Web 以支持 OWIN 和項目 Helios。