當Autofac嘗試通過依賴關係解析程序解析構造函數參數時,是否可以一次列出所有缺失的註冊?或者是要經過一次一個唯一的方法..列出依賴關係解析程序的所有缺少的Autofac註冊DefaultConstructorFinder
拿這個作爲一個例子:
public MyWebApiController(IMyInterface myInterface)
我知道實現IMyInterface的類MyInterfaceImpl必須要註冊這樣與Autofacs ContainerBuilder:
builder.RegisterType<MyInterfaceImpl>().As<IMyInterface>()
但是如果MyInterfaceImpl取決於其他10層構造,和他們每個人依賴於福..有沒有辦法讓Autofac經歷還沒有被登記的ContainerBuilder所有的依賴,而不是拋出一個戴佩爾第一次發生nvanceResolutionException?
採取:
public MyInterfaceImpl(IMyInterface2 myInterface2, IMyInterface3 myInterface3, ... etc ...)
而且每一種都有自己的構造函數需要註冊..
public MyInterface2Impl(IMyInterfaceB myInterfaceB)
等
因爲我已經失蹤Autofac註冊,以下異常消息顯示,告訴我我必須註冊接口,即MyInterface2Impl。與 「Autofac.Core.Activators.Reflection.DefaultConstructorFinder」發現 類型的構造函數
無「MyWebApiController」可以與提供的服務和 參數
和細節顯示哪些調用參數它拒絕:
無法解析構造 「太虛.ctor的參數 'IMyInterface2 myInterface2'(IMyInterface2 myIn terface2,IMyInterface3 myInterface3, ...等...)
但對未來5個人失蹤登記我可能什麼都沒有。這是一個煩惱,因爲我必須啓動站點/服務並調用api控制器,在每次修復缺少的註冊後,有時可能會有很多缺少註冊,當設置coctail時。
所以,Autofac能讓我看到所有缺少的註冊信息嗎?
Perfect thanks!它適用於我們簡單的場景。 – Bogmag