OWIN/Katana'da barındırılan bir WebAPI hizmetleri için bir Onion Architecture'ı takip etmeye çalışıyorum.OWIN üzerinde WebAPI ile Soğan Mimarisi ve DI Uygulanabilir Mümkün mü?
Böyle bir çözüm yapıya sahiptir:
- DependencyResolution: Owin Başlangıç sınıfı ve IoC kurulum
- WebAPI içerir: Web API kontrolörleri
- Altyapı: Arabirim Uygulamaları
- Çekirdek: Arayüzler
WebApi projesinin bağımlılıkları enjekte etmek için Bağımlılık Çözümü projesini istiyorum. DependencyResolution, WebApi projesinin çıktı klasörüne çıkış yapmak için bir oluşturma görevine sahiptir.
Ben yaklaşım AutoFac ve DotNetDoodle.Owin.Dependencies Nuget paketini kullanarak, burada özetlenen aşağıdaki şeyler: my Başlangıç sınıfında RegisterApiControllers için, çağrı hizmetlerini kayıt içinde,
http://www.tugberkugurlu.com/archive/owin-dependencies--an-ioc-container-adapter-into-owin-pipeline
Ancak () başaramayacak. DepenedencyResolution montaj o ApiContollers içeren takımını (WebAPI montaj) almak mümkün olmayacaktır böylece yürütmek ilk olacak: Burada) (assembly.load için tek uygun seçenek başvurmadan
public IContainer RegisterServices()
{
ContainerBuilder builder = new ContainerBuilder();
builder.RegisterApiControllers(Assembly.GetExecutingAssembly());
builder.RegisterType<MyRepo>()
.As<IRepo>()
.InstancePerLifetimeScope();
return builder.Build();
}
mi, yoksa DependencyResolution projesinin izole edilmesini ve sadece WebApi projesinden kaynaklanma fikrini unutmamalı mıyım (biraz daha azına benziyor)?