3
有可能通過在容器中註冊LazyOfTComponentLoader和解決到懶惰地解決在城堡溫莎的分量的Lazy<T>
作爲指定here:在城堡溫莎自動懶惰地解決組件
container.Register(
Component.For<ILazyComponentLoader>().ImplementedBy<LazyOfTComponentLoader>(),
Component.For<ISomeService>().ImplementedBy<ServiceImpl>().LifestyleTransient()
);
var lazy = container.Resolve<Lazy<ISomeService>>();
lazy.Value.DoSomething();
然而,是否有可能寄存器容器中的一個組件,因此它總是解析爲Lazy<T>
而不需要在解析調用中指定Lazy?
具體來說,我想知道如何在使用構造函數注入時將惰性組件注入到MVC項目中的控制器中。
編輯:您可以指定Lazy<ISomeService> someService
作爲參數在控制器的構造函數中,可以看到here。但是,有沒有辦法確保通過註冊過程懶惰地解決組件問題?