因此,在 Razor Pages 中,我知道如何使用依賴注入將我的DbContext(例如)注入建構式中,以通過創建全域私有readonly變數在整個類中訪問它。
但是,假設我有一個DbManager類對資料庫進行所有呼叫(以避免從應用程式中的每個 Razor 頁面進行呼叫),然后我必須將背景關系傳遞給該類,即使我正在使用(至少據我所知)那里也有依賴注入。
它不應該能夠在不將其實際傳遞給建構式的情況下找到它,這不是依賴注入的全部意義,還是我遺漏了什么?
這里的最佳做法是什么?只是感覺將背景關系作為引數傳遞是錯誤的!我懷疑我做錯了什么……是嗎?

uj5u.com熱心網友回復:
如果您沒有對其中的背景關系進行任何顯式參考呼叫,IndexModel則只需注入 DbManager。
private readonly DbManager manager;
public IndexModel(DbManager manager) {
this.manager = manager;
}
public void OnGet() {
manager.GetStuffFromDb();
//...
}
背景關系將在決議時注入到管理器中,前提是它(背景關系)也在組合根中注冊
參考顯式依賴原則
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/444901.html
標籤:asp.net 核心 依赖注入 剃刀页面 数据库上下文
上一篇:如何使用.NET6在aspnet核心Web應用程式中執行database.ensurecreated()?
下一篇:影像的延遲渲染-SkiaASP
