-1
在我的WebApi的引導程序類中,我試圖根據其接口類型註冊名爲「Facade」的類的新實例。統一參數構造函數異常
在這種被註冊的類型中,它需要一個'CRUDOperator'的新實例,它的構造函數中也有一個新的'Adapter'實例。我正在嘗試做什麼?我目前只是收到一個例外,即超載參數不正確。
public static class Bootstrapper
{
public static void Initialise()
{
var container = BuildUnityContainer();
GlobalConfiguration.Configuration.DependencyResolver = new Unity.WebApi.UnityDependencyResolver(container);
}
private static IUnityContainer BuildUnityContainer()
{
var container = new UnityContainer();
*****ERROR*****
container.RegisterType<IFacade,Facade>(new CRUDOperatorSelector(new Adapter()));
return container;
}
}
是的,你是正確的,他們是具體的實現。所以它就像創建一個新的統一容器一樣簡單.....註冊類型如圖所示.... container.RegisterType(); ....並且不需要嘗試和注入任何東西進入這種註冊類型? –
user1352057
是的,它應該是這麼簡單;)額外的問題是什麼樣的生命週期你需要這些類型 - 默認情況下,每當團結需要解決它們時,你會得到這些類型的新實例 - 例如,如果有其他類型在他們的構造函數中接受CRUDOperatorSelector和Adapter,他們每個人都會得到一個單獨的新實例 - 我希望你知道我在這裏的意思;) –
@Prezemek Walendowski。謝謝!就是這樣,看起來我很想去探索!你能回答這個問題,所以我可以選擇你的答案是正確的。 – user1352057