【发布时间】:2016-02-13 22:11:43
【问题描述】:
看书:NHibernate 3: Beginners guide发现了一个让我好奇的片段:
实战时间——创建基础实体
(...)
- 在项目的文件夹域中添加一个新类并将其命名为实体。使 T 中的类抽象和通用。您的代码应类似于以下代码 sn-p:
using System;
namespace OrderingSystem.Domain
{
public abstract class Entity<T> where T : Entity<T>
{ }
}
我的问题是:片段where T : Entity<T> 的意义何在?
我知道T 类型上的where 部分can be applied to add constraints,但上面的代码看起来永远不可能实例化这样的类(如果它不是抽象的话)。
【问题讨论】: