任何人都可以帮助我where TEntity : class, IEntity, new()在下面的类声明中的行.
public abstract class BaseEntityManager<TEntity>
where TEntity : class, IEntity, new()
Run Code Online (Sandbox Code Playgroud)
use*_*783 29
where TEntity : ...将约束应用于通用参数TEntity.在这种情况下,约束是:
class:TEntity的参数必须是引用类型
IEntity:参数必须是或实现IEntity接口
new():参数必须具有公共无参数构造函数
来自http://msdn.microsoft.com/en-us/library/d5x73970.aspx
where类声明后的关键字限制泛型的类型TEntity。在这种情况下,TEntity 它必须是一个类(意味着它不能是像intor 这样的值类型DateTime),并且它必须实现接口IEntity。该new()约束表明此类中的方法能够调用由TEntity(eg new TEntity())表示的泛型类的默认构造函数