- 我使用ASP.NET核心
- 我
IService
與DI容器註冊 - 有兩種實現方式:
FooService
和BarService
- 我必須選擇基於當前請求的MVC區服務
所以,我需要這樣的東西:確定ASP.NET MVC核心區
services.AddScoped<IService>(
c => IsThisTheFooArea
? c.GetRequiredService<FooService>() as IService
: c.GetRequiredService<BarService>() as IService
);
我不知道如何執行IsThisTheFooArea
檢查。
我如何訪問HttpContext
或類似的東西,所以我可以檢查當前的路線?
謝謝,這個工程。 (......但哇,這麼多的箍箭跳過了這麼簡單的事情。) – grokky
另外,我回想起在github項目頁面上閱讀'ActionContextAccessor'默認沒有註冊,因爲它很昂貴,所以很遺憾沒有更簡單的方法它的工作原理雖然足夠滿足我的需求。 – grokky
這是獲取區域信息所必需的。我不知道是否有另一種方式獲得地區名稱。可以使用請求路徑(區域部分),但在這種情況下,您需要注入'HttpContextAccessor',我認爲這不是好的方法。 –