Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 14932|Yanıt: 0

[ASP.NET] asp.net MVC, IOC bağımlılık enjeksiyonunu uygulamak için ninject kullanır

[Bağlantıyı kopyala]
Yayınlandı 14.10.2016 16:46:57 | | |
İlk olarak, aşağıdaki Nuget komutuyla Ninject framework'ü kurun:



Bir arayüz oluşturun:



Sonra bu arayüzü uygulayın:



WebUI projesi altında Infrastructure adlı bir klasör oluşturuyoruz, ona NinjectControllerFactory adlı bir fabrika sınıfı ekliyoruz, kod şu şekildedir:



ninjectKernel.Get(controllerType) yukarıdaki kodda bir Controller örneği alabilir. Controller sınıfını manuel olarak örneklemek çok karmaşık bir süreçse, Controller sınıfının parametreleri olan bir yapıcısı olup olmadığını ya da yapıcının ne tür bir argüman olduğunu bilmiyoruz. Ninject kullanmak için yukarıdaki Get yöntemlerinden sadece birini kullanmanız yeterlidir ve Ninject tüm bağımlılıkları otomatik olarak dahili olarak yönetir ve ihtiyacımız olan nesneleri akıllıca oluşturur.

Controller Factory sınıfı oluşturulduktan sonra, MVC'ye Controller nesnesini oluşturmak için NinjectControllerFactory sınıfımızı kullanmasını söylememiz gerekiyor; bunu yapmak için Global.asax dosyasının Application_Start yöntemine aşağıdaki kodu eklememiz gerekiyor:




Controller klasöründe ControllerBase adında yeni bir sınıf oluşturuyoruz ve kod şu şekildedir:



Sonra, kontrolcüyü ControllerBase sınıfını entegre etmek için değiştiriyoruz, tamam, tamam!






Önceki:c# Dosyanın SHA256 değerini hesaplayın
Önümüzdeki:VSFTP süreç organizasyonunu kur
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com