public class GenericRepository<TEntity> where TEntity : class
{
internal DbContext context;
internal DbSet<TEntity> dbSet;
public GenericRepository(DbContext context)
{
this.context = context;
this.dbSet = context.Set<TEntity>();
}
//snip
}
public class MyRepository<TEntity> where TEntity : GenericRepository<TEntity>
{
public MyRepository(DbContext context) : base(context){ }
//snip
}
Run Code Online (Sandbox Code Playgroud)
我扩展了GenericRepository类,并使用base的成员变量,我需要在child的构造函数中调用Base的构造函数.但我得到一个错误,上面写着:
'object'不包含带有1个参数的构造函数
即使GenericRepository有构造函数.
我究竟做错了什么?
D S*_*ley 11
因为你的"基类" object不是GenericRepository<TEntity>.你添加了一个约束TEntity,你没有继承GenericRepository<TEntity>.也许你这意味着:
public class MyRepository<TEntity> : GenericRepository<TEntity> where TEntity : class
{
public MyRepository(DbContext context) : base(context){ }
Run Code Online (Sandbox Code Playgroud)