您現在的位置是:首頁 > 籃球
如何在ASP.Net 程式碼中使用依賴注入(DI)
- 由 IT168 發表于 籃球
- 2023-01-21
管道di是指什麼
【IT168 資訊】利用ASP。Net 程式碼中的依賴注入來插入元件並提高程式碼維護性和可測試性
對依賴注入的支援建立在ASP。Net程式碼、微軟的開源、跨平臺、精益和模組化框架中,用於構建高效能、可擴充套件的web應用程式。在ASP。Net程式碼中,可以將框架服務和應用程式服務注入到類中,而不是緊密耦合。在本文中,我們將介紹如何在ASP。Net程式碼中使用依賴注入。
依賴注入(也稱DI)是一種設計模式,其中一個類或物件將其依賴的類注入(由另一個類或物件傳遞給它),而不是直接建立它們。依賴注入有利於促進松耦合,提高可測試性和維護性。此外,依賴注入允許更改實現,而無需更改利用這些實現的類或介面。
透過依賴注入在ASP。Net中提供服務
現在在Visual Studio中使用ASP。Net程式碼構建一個簡單的服務,並說明如何將它新增到依賴注入容器中,並將其註冊到管道中,然後在應用程式中使用它。 按照以下步驟在Visual Studio 2017或Visual Studio 2015中建立一個新的ASP。Net程式碼專案。如果您使用Visual Studio 2015,請確保已安裝。Net Core。
1。開啟Visual Studio
2。單擊檔案 - >新建 - >專案
3。 在“新建專案”對話方塊視窗中,選擇“ASP。NET Core Web Application”專案模板
4。指定專案的名稱和位置,然後單擊OK儲存
現在,建立以下POCO類。
考慮以下名為ITopicAreaService的介面,代表TopicAreaService的協議。
ITopicAreaService介面包含一個名為getalltopicare()的方法宣告。TopicAreaService類實現了ITopicAreaService,如下所示。
在ASP。Net中註冊依賴注入服務
作為ASP。Net程式碼的一部分,下一步是使用依賴注入容器註冊TopicAreaService。請在Startup。cs檔案中的ConfigureServices方法中編寫下面的程式碼段。 ConfigureServices方法將服務新增到服務容器中,使它們透過依賴注入在應用程式中可用,在執行時自動呼叫。
如果您有多個需要註冊的服務,您可以使用如下所示的擴充套件方法。
呼叫RegisterServices方法可以使ConfigureServices方法保持不間斷的可維護性。 而不是在ConfigureServices中指定每個服務,您需要做的是在ConfigureServices方法中呼叫RegisterServices擴充套件方法一次,如下面的程式碼片段所示。
依賴注入在ASP。Net中的生命週期
依賴注入生命週期用於指定何時建立和重新建立依賴物件。 就ASP。Net程式碼應用程式中依賴注入例項的生命週期而言,有三種可能性:
1。 Singleton:這意味著只有一個例項將被所有消費者建立和共享。
2。 Scoped:這意味著每個範圍一個例項(即每個請求到應用程式的一個例項)將被建立。
3。 Transient:這意味著元件將不會共享,但將在每次請求時建立。
請注意,在本示例中,我們使用了Transient型別。 以下程式碼片段說明了如何在註冊服務時使用其他型別的生命週期。
在ASP。Net中透過依賴注入使用服務
現在,實現的服務已被新增到管道中,可以在ASP。Net程式碼專案的任何控制器中使用它。 以下程式碼片段說明了如何在控制器中請求TopicAreaService的例項。
以下是控制器操作方法呼叫TopicAreaService的GetAllTopicAreas方法。