如何在继承类型上执行接口泛型规则?

时间:2018-10-29 13:59:47

标签: c# generics interface .net-core

我有一个定义合同的接口,该接口将/var/www/强制为一个类并实现了IBaseEntity接口:

TEntity

我有一个实现此接口的抽象类:

public interface IBaseRepository<TEntity, TEntityKey>
    where TEntity : class, IBaseEntity<TEntityKey>, new() { /* Some code. */ }

基类给我一个编译错误:

  

类型“ TEntity”必须是引用类型,才能在通用类型或方法“ IBaseRepository”中用作参数“ TEntity”

可以通过在界面中添加public abstract class AbstractBaseRepository<TEntity, TEntityKey> : IBaseRepository<TEntity, TEntityKey> { /* Some code. */ } 关键字来解决此问题,但是我想知道为什么类不从该界面继承该规则,以及是否有任何方法可以做到这一点。

0 个答案:

没有答案