這篇文章主要為大家展示了“StructureMap怎么用”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“StructureMap怎么用”這篇文章吧。
成都創(chuàng)新互聯(lián)專注于東山網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供東山營(yíng)銷型網(wǎng)站建設(shè),東山網(wǎng)站制作、東山網(wǎng)頁設(shè)計(jì)、東山網(wǎng)站官網(wǎng)定制、小程序開發(fā)服務(wù),打造東山網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供東山網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。StructureMap是一款很老的IoC/DI容器,從2004年.NET 1.1支持至今。
//創(chuàng)建業(yè)務(wù)接口 public interface IDispatchService { } public interface ICourier { } public interface IPaymentGateway { } public interface IPaymentMerchant { } //接口的實(shí)現(xiàn) public class DispacthService : IDispatchService { private ICourier _courier; public DispacthService(ICourier courier) { _courier = courier; } public override string ToString() { return _courier.ToString(); } } public class FedExCourier : ICourier { } public class StreamLinePaymentMerchant : IPaymentMerchant { } public class PaymentGateway : IPaymentGateway { private IPaymentMerchant _paymentMerchant; public PaymentGateway(IPaymentMerchant paymentMerchant) { _paymentMerchant = paymentMerchant; } public override string ToString() { return _paymentMerchant.ToString(); } } //業(yè)務(wù)使用 public class OrderService { private IPaymentGateway _paymentGateway; private IDispatchService _dispacthService; public OrderService(IPaymentGateway paymentGateway, IDispatchService dispacthService) { _paymentGateway = paymentGateway; _dispacthService = dispacthService; } public override string ToString() { return string.Format("IPaymentGateway:{0} IDispatchService:{1}", _paymentGateway.ToString(), _dispacthService.ToString()); } } //配置依賴關(guān)系 public class BootStrapper { public static void ConfigureStructureMap() { ObjectFactory.Initialize(x => x.AddRegistry()); } } public class ModelRegistry : Registry { public ModelRegistry() { For ().Use (); For ().Use (); For ().Use (); For ().Use (); } } class Program { static void Main(string[] args) { BootStrapper.ConfigureStructureMap();//啟用配置 OrderService orderService = ObjectFactory.GetInstance (); Console.WriteLine(orderService.ToString()); IPaymentGateway paymentGateway= ObjectFactory.GetInstance (); Console.WriteLine(paymentGateway); Console.ReadKey(); } }
以上是“StructureMap怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。