C# 我可以减少泛型类的注册吗?

C# 我可以减少泛型类的注册吗?,c#,unity-container,C#,Unity Container,我创建了一个带有类的接口: public interface IBackgroundSubscriber<T> { ... } public class BackgroundSubscriber<T> : IBackgroundSubscriber<T> { ... } 然后运行它: public void Initialize() { _container.Resolve<IBackgroundSubscriber<T

我创建了一个带有类的接口:

public interface IBackgroundSubscriber<T>
{
    ...
}

public class BackgroundSubscriber<T> : IBackgroundSubscriber<T>
{
    ...
}
然后运行它:

public void Initialize()
{
    _container.Resolve<IBackgroundSubscriber<TypeA>>();
    _container.Resolve<IBackgroundSubscriber<TypeB>>();

    ... 
}
public void Initialize()
{
_container.Resolve();
_container.Resolve();
... 
}
但现在看来我必须大量(3次)指定
TypeA
TypeB

我能让它更智能吗?

你可以做以下几件事

_container.RegisterType(typeof(IBackgroundSubscriber<>),
                        typeof(BackgroundSubscriber<>));
\u container.RegisterType(typeof(IBackgroundSubscriber),
类型(背景订户);

_container.RegisterType(typeof(IBackgroundSubscriber<>),
                        typeof(BackgroundSubscriber<>));