我正在浏览Github上的EF7代码并找到一条如下所示的行:
public virtual DbSetSet () where TEntity : class => _setInitializer.Value.CreateSet (this);
我之前在类级别上看过这种语法,如下所示:
public class SomeClasswhere T : class
哪个说T
应该是类型类.但来自EF7源的这条线让我感到困惑.我不确定它是做什么的.
它是一个表达身体的成员,是C#6中的一种新语法.
这是一种方法,而不是财产.C#不允许通用属性.
它是一样的
public virtual DbSetSet () where TEntity : class { return _setInitializer.Value.CreateSet (this); }