我需要写一个类:
public class DuplicateDoesNotExistValidation<T, TId> : IRepositoryValidation<T>
where T : DomainEntity<TId>
{
...
public Error Validate(T entity)
{
IRepositoryValidation的方法为Error Validate(T entity)
这很有效,但看起来很笨,因为我们只指定了两种通用类型T和TId,当我只需要一个时,TId。
我不能:
public class TestDuplicateDoesNotExistValidation<T, TId> : IRepositoryValidation<DomainEntity<TId>>
因为这意味着IRepositoryValidation接口接受具体的DomainEntity类。
我也不能:
Type T = typeof(DomainEntity<TId>);
因为它是一个变量,不能用来定义父类。
有什么想法吗?