0
我進入統一的8個小時,並且已經計算出了一些內容,但是我無法找到與此相關的角度。我有一個IResourceManager
統一 - 在其他已解決的類型中使用已解決的類型作爲參數
public interface IResourceManager
{
ILogger Logger { get; set; }
string Path { get; set; }
}
和相應的類型:
public class ResourceManager : IResourceManager
{
public ResourceManager(ILogger logger, string path)
{
Logger = logger;
Path = path;
}
public ILogger Logger { get; set; }
public string Path { get; set; }
}
Futhermore
public class Logger : ILogger
{ }
最後
public ResourceManagerController(ILogger logger, IResourceManager imageResourceManager)
{}
我想表現的記錄器和ResourceMa非常喜歡單身。只要IResourceManager中沒有ILogger,我就可以繼續工作,但我一直在收到「無默認構造函數」異常。
到目前爲止,我有:
public static void Register(HttpConfiguration config)
{
var container = new UnityContainer();
container.RegisterType<ILogger, Logger>("DefaultLogger", new ContainerControlledLifetimeManager());
container.RegisterType<IResourceManager, ResourceManager>("imageResourceManager", new ContainerControlledLifetimeManager(),
new InjectionConstructor(new ResolvedParameter<ILogger>("DefaultLogger"), "basePath"));
config.DependencyResolver = new UnityResolver(container);
// Web API routes ...
}
我怎麼都讓ResourceManagerController IST的成功實例化和兩Logger
和ResourceManager
作爲單身人士註冊我的類型?