使用Unity.MVC讓ASP.NET Framework4.8 MVC實現DI注入
2025-02-05
使用Unity.MVC讓ASP.NET Framework4.8 MVC實現DI注入
何謂依賴(耦合)&控制反轉&相依性注入? DI & IoC 觀念解說
.Net Core DI 服務生命週期
Angular的元件,有些時候會把一些共用邏輯寫到Service裡面,但是會發現明明就是不同的元件,但不同元件之間的變數可能會被不同元件互相連動影響,導致變數有可能變成共用的這種情形發生。
上篇跟大家簡單的介紹了什麼是耦合,其中有提到依賴反轉原則(D.I.P.),其中有一點是說高層次的模組不應該依賴於低層次的模組,兩者都應該依賴抽象介面。
控制反轉(Inverse of Control, IoC)是一種設計模式,相依性注入(Dependency Injection)則是實踐IoC的一種方式,為什麼要IoC? 先來看看物件導向S.O.L.I.D.原則裡面的D.,依賴反轉原則(Dependency inversion principle,DIP)有下列特性:
.Net Core其實也可以使用.Net Framework時期那種ADO.Net的寫法
只是取連線字串的方式有點不同。其他步驟都大同小異
流程大致如下:
1.於建構子注入IConfiguration。之後就可以用實作GetValue取得appsettings.json裡的連線字串
2.下SQL做查詢,並用SqlDataAdapter接資料並塞進DataSet
3.把DataRow跟Model做Mapping。傳到View時就可以用強型別寫Razor語法