未能找到令人满意的解决方案,让我在这里发布:
我们使用 NHibernate 作为我们的 ORM,并且刚刚开始使用 Sql Server 时态表。因此,我们需要对 IQueryable(或 HQL Builder 或 InterceptingProvider 或其他东西)进行某种扩展,以允许我们将“AS OF”子句添加到我们的查询中,例如
var results = session.Query<Company>
.Where(c => c.Name == "FogCreek")
.AsOf(DateTime.Today.AddYears(-1));