在MVC3應用程序中我有我的自定義實現IPrincipal。如何在web.config中爲每個http請求註冊Autofac組件?
我想在web.config中註冊它,然後通過Autofac注入到構造函數中。
Autofac XML配置具有屬性「實例範圍」,但不支持「per-http-request」。
任何想法如何在web.config中註冊每http範圍的組件?
我已經嘗試過每個依賴項,單個實例或每個生命週期的所有權與外部所有權的不同組合,但結果非常麻煩。
在MVC3應用程序中我有我的自定義實現IPrincipal。如何在web.config中爲每個http請求註冊Autofac組件?
我想在web.config中註冊它,然後通過Autofac注入到構造函數中。
Autofac XML配置具有屬性「實例範圍」,但不支持「per-http-request」。
任何想法如何在web.config中註冊每http範圍的組件?
我已經嘗試過每個依賴項,單個實例或每個生命週期的所有權與外部所有權的不同組合,但結果非常麻煩。
由於Autofac團隊的Nicholas Blumhardt告訴我應該使用每壽命範圍。
在ASP.NET下運行時,它實際上相當於每個HTTP請求。
據我可以看到從源代碼中,不支持在XML配置中註冊每個http請求。如您所述,只允許使用三個instance-scope
值(每個依賴項,單個實例和每個生命週期範圍)。
此外,看看如何per-http-request
範圍界定的工作原理,它使用InstancePerMatchingLifetimeScope
註冊電話和httpRequest
鍵。同樣,沒有配置「匹配生命週期範圍」的XML配置方式。
要走的路是通過代碼進行配置。
花了我很長時間才發現此回覆。很高興知道。 – Echiban