Unity 2.0关于泛型类的IOC配置

本文关键字:IOC 配置 泛型类 Unity | 更新日期: 2023-09-27 18:12:46

我想要一些Repository类扩展一个常见的通用类来执行一些常见的操作,问题是:如何配置UserExRepository类型在配置文件

public class UserExRepository : Repository<User>, IUserEx
{
    public UserExRepository(Context context):base(context){ }
}
public abstract class Repository<TObject> : IRepository<TObject>
    where TObject : class
{
    protected Context Context = null;
    public Repository(Context context)
    {
        Context = context;
    }
    // do some common operation about entity, like create, delete...
}

Unity 2.0关于泛型类的IOC配置

你可以配置将泛型绑定到泛型,泛型绑定到非泛型,非泛型绑定到泛型,

<unity>
    <containers>
        <container>
            <types>
                 <type type="Repository`1[[User]]" mapTo="UserExRepository ">
            </types>
        </container>
    </containers>
</unity>