我有一個自定義IHttpModule進行身份驗證(對Facebook,Myspace等)。它引發了一個事件,可以在HttpApplication實例中處理有關用戶的詳細信息。這很像是FormsAuthenticationModule引發的OnAuthenticate事件。如何將數據從IHttpModule獲取到ASP.NET MVC RequestContext?
從HttpApplication類中,我應該在哪裏放置這些信息,因此它可用於ASP.NET MVC管道?我曾經把它粘在Context.Items字典中。但似乎與(更友好)HttpContextBase我想把它放在那裏,這樣很容易模擬/注入,我沒有在我的控制器中使用HttpContext.Current。
那麼,基本上,我如何最好地從IHttpModule獲取數據到MVC上下文中?我可以從快速瀏覽中得到最好的結果,就是創建一個自定義的IControllerFactory,將數據從HttpContext中提取出來並添加到RequestContext中。我回答了我自己的問題嗎?有沒有一種侵擾性的方式(就像我可以處理的事件)?
我明白了,所以將項目從HttpContext複製到HttpContextBase。很高興知道。 – 2009-01-21 02:42:44