Konunun dediği gibi, gerçekten! Onlar ne yapar?Castle Windsor bileşen kaydı bağlamında "ForwardedTypes" nelerdir?
cevap
Yönlendirilen türleri somut bir örnek olarak, tek bir uygulaması tarafından uygulanan birden fazla hizmet için izin biz çeşit ağaç düğümleri ile çalışmak için iki arayüzleri olduğunu varsayalım:
public interface INodeAlterationProvider { ... }
public interface IChildNodeListProvider { ... }
Ve çeşitli bileşenler almak Bu arayüzlerden birine veya her ikisine bağımlılık. Sen NodeFactory iki örneğini kayıt olabilir
public class NodeFactory : INodeAlterationProvider, IChildNodeListProvider { ... }
,: gibi Ancak bu arayüzler her uygulanmasında paylaşılan işlevsellik bir sürü onların olduğunu keşfetmek ve diğer bazı özellikleri ile birlikte tek bir sınıfa uygulamaları birleştirmek istediğini söylüyorsun orada özellikle eğer anlamak vb sert ve ayıklama yapabilir -
container.Register(Component.For<INodeAlterationProvider>().ImplementedBy<NodeFactory>());
container.Register(Component.For<IChildNodeListProvider>().ImplementedBy<NodeFactory>());
Ama bu potansiyel NodeFactory iki tekil örneklerini anlama var olabileceği - ideal değil, inşa etmek pahalıya geldiği, özellikle: her hizmet için bir uyguladıkları İkiden fazla arayüz uygulanmaktadır.
container.Register(Component.For<INodeAlterationProvider>().Forward<IChildNodeListProvider>().ImplementedBy<NodeFactory>());
Not: iletilen türleri aynı uygulamasına birden fazla hizmet iletmek için izin adım nerede
Bu, burada bunu yaparken bir örnek Burada gösterilen bileşen kayıt kodu gövdesinde yalnızca .
- 1. Castle Windsor: Bir bileşen kaydedildiğinde en iyi yol nedir?
- 2. Castle Windsor kurucu parametreleri iletiliyor
- 3. Castle Windsor Resolve çalışma saatinde
- 4. Castle Windsor: Resolve() tarafından atılan istisnaları bastırır()
- 5. Windsor Castle arayüz türleri dizisi enjekte edemez
- 6. Castle Windsor veya Spring.NET - avantajlar ve dezavantajlar
- 7. Castle Windsor yapılandırma dosyasında şifreler mi saklanıyor?
- 8. Castle-Windsor XML yapılandırması yoluyla ForwardedTypes'i destekliyor
- 9. Windsor Castle: belgeler için iyi kaynaklar, öğreticiler
- 10. Windsor Castle ile dizinden DLL alınıyor
- 11. Castle Windsor, bileşen zaten kaydedildikten sonra seçici ile ara uygulayıcılar uygular
- 12. Windsor Castle - yapıcı parametrelere dayalı bileşenleri nasıl çözüleceği
- 13. Castle Windsor: Belirli uygulamalarla birlikte kongre kaydını kullanma
- 14. Can Windsor, bileşen listelerini enjekte etti mi?
- 15. Test nhibernate Castle httpModules içinde Windsor haritaları kaydedilmedi
- 16. Castle Windsor ile çoklu servis uygulamalarını enjekte edin
- 17. Castle Windsor IoC Mülk Enjeksiyon basit nasıl yapılır
- 18. Castle Windsor, adlandırılmış örneği ve adlandırılmamış örneği hatalı
- 19. Castle Windsor: Bir liste parametresini kapsayıcıya programlı olarak nasıl geçiririm?
- 20. Bir Castle Windsor konteyner örneğiyle kaydedilen tüm türleri listele
- 21. Castle Windsor için intellisense sağlayacak bir .xsd dosyasını nerede bulabilirim?
- 22. Castle Windsor: Tüm kayıtlı bileşenlerin çözülebilir olduğu nasıl test edilir?
- 23. Windsor Castle benim global.axax içinde koduna sahip meclisleri
- 24. Castle Windsor: Koddan bir constructor parametresi nasıl belirlenir?
- 25. Castle Windsor: Çözümü bir çağrı olmadan tescil etmenin bir yolu var mı?
- 26. Castle windor Koşullu bağımlılık ekleme
- 27. Kale ile Serilog'u kullanma Windsor LoggingFacility
- 28. Entegrasyona AutoFixture kullanma tekniği Castle Windsor kullanarak bir uygulamayı test etme tekniği
- 29. Kale Windsor ile Async MVC Aksiyonu
- 30. Windsor, yakalanan bileşenleri çözümlemiyor
Teşekkürler - ne olduğunu açıklıyor. Ancak, buna dayanarak, iki hizmeti birleştirmek için "uygun" bir refakatçi yapmamanın kısayolu gibi kokuyor ...? –
de verdiğim örnekte bir koku olabilir, ben manşeti ... daha olası bir örnek ILoggerFactory uzanır ve her iki arabirimleri karşılayan tek sınıfı tarafından uygulanan bir IExtendedLoggerFactory gibi bir şey olabilir kapalı onunla geldi. – Bittercoder
Ah; evet, bunu görebilirim. Aslında Mike Hadlow'un dün gece IoC/Windsor'daki konuşmasındaydım ve orada da bagajla ilgili bazı şeyler buldum :) –