我想从通用的
TEntity
继承,但我收到此错误:
编译器错误CS0689
无法从“标识符”派生,因为它是类型参数泛型类的基类或接口不能由类型参数指定。从特定的类或接口派生,或者从特定的泛型类派生,或者包含未知类型作为成员。
这是我的代码:
public class CreateCategoryCommand<TEntity> : TEntity, ICommand<CategoryDtoSelect>
{
}
您不能从用作类型参数的类型继承。原因是编译器需要知道
TEntity
的方法和字段才能创建派生类。但由于它是通用的,所以不起作用。
您可以从另一个类继承,将
TEntity
作为类型参数,也可以使用聚合。您可以声明一个类型为TEntity
的字段。