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

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

[WebAPI] MVC5 ve webAPI'de Autofac bağımlılık enjeksiyonu kullanılır

[Bağlantıyı kopyala]
Yayınlandı 29.11.2017 14:35:33 | | | |
Birçok kitap, bağımlılık enjeksiyonu ve kontrol tersine çevirme gibi kavramlardan bahseder; bunların tümü gevşek bağlı katmanlar, bileşenler ve sınıf amaçlarını gerçekleştirmeyi amaçlar.

Kontrolör ile Model arasındaki doğrudan bağlantıyı ayırmak için Depo sınıfı yaygın olarak kullanılır. Depo sınıfı ile Kontrolör arasındaki yakın bağlantıyı koparmak için genellikle doğrudan Depo sınıfı tarafından tanımlanmaz ve örneklenmez, Denetleyicinin yapım yöntemiyle belirtilen Depoya enjekte edilir.



Popüler IoC konteynerleri: Ninject, Autofac, Unity.

İşte Autofac enjeksiyon MVC5 ve Webapi2'nin nasıl kullanılacağına dair kısa bir açıklama.

1. Autofac, Autofac.Mvc5 ve Autofac.Webapi2'ye referans vermek için nupkg kullanın.

PM> install-package autofac -sürüm 3.5.0

PM> install-package autofac.mvc5

PM> autofac.webapi2 paketini kur (Not: Projenizde webapi2 kullanıyorsanız, burada webapi2 olmalı, webapi değil, aksi takdirde çalışma zamanında "Rewrite member Autofac.Integration.WebApi.AutofacWebApiDependencyResolver.BeginScope()" görünür) miras güvenlik kurallarını ihlal etti. Geçersiz kılılan yöntemin güvenlik erişilebilirliği, yeniden yazılmış yöntemin güvenli erişilebilirliğiyle eşleşmelidir. Yanlış. )



2. Bileşeni kaydedin.

3. Daha sonra kullanmak üzere bir Konteyner oluşturun.

var konteyner=builder. Build();
4. Konteynerden ömür boyu bir dürbün oluşturun.

5. Bu Yaşam Boyu Kapsamını bileşenlerin örneklerini ayrıştırmak için kullanın.

yapılandırma. DependencyResolver = yeni AutofacWebApiDependencyResolver(container); API konteyneri kaydetmek için HttpConfiguration nesnesini kullanmanız gerekir
DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); MVC konteynerini kaydet
6. WebApiConfig sınıfının Register metodunda, yukarıdaki adım kodunu çağırın ve HttpConfiguration nesnesini iletin.



Autofac'ın avantajı, yapılandırma gerektirmeden bir anda ayrılabilmesidir; autofac, MVC'de "konvansiyon yapılandırmadan daha büyüktür" kavramını daha iyi uygular.





Önceki:asp.net MVC bir WebAPI denetleyicisi ekliyor
Önümüzdeki:Nasıl şarj edilir.
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