无法从 collection 转换为 Microsoft.Practices.unity.inje

本文关键字:Microsoft Practices unity inje 转换 collection Interface | 更新日期: 2024-11-07 01:02:16

>我在配置文件 Unity 中使用依赖注入 et 我包括

container.RegisterType<ICollection<IModifObserver>>(new Collection<IModifObserver>() { new NotifyHisto() });

但我有从无法从collection<IModifObserver>转换为Microsoft.Practices.unity.injectionmember的转换错误

我想用对象的实例填充我的集合。

无法从 collection<Interface> 转换为 Microsoft.Practices.unity.inje

如果要注册实例,请使用如下所示的RegisterInstance方法:

container
    .RegisterInstance<ICollection<IModifObserver>>(
        new Collection<IModifObserver>() { new NotifyHisto() });

如果希望容器在每次解析时都返回一个新实例,则可以将 InjectionFactory 类与 RegisterType 方法一起使用,如下所示:

container
    .RegisterType<ICollection<IModifObserver>>(
        new InjectionFactory(
            c => new Collection<IModifObserver>() { new NotifyHisto() }));