如果我有一个由所有实体实现的通用接口,例如:
public interface IEntity {
int Id { get; set; }
DateTime ValidFrom { get; set; }
DateTime? ValidTo { get; set; }
}
如果 ValidTo 为空,是否可以过滤掉作为查询的一部分返回的对象 - 只返回仍然有效的对象。
我得到这个想法的地方是 Julia Lerman 和 Rowan Miller 在 PEF:DbContext 中使用类似的东西来设置断开连接的实体的状态,但是他们通过状态管理器来做到这一点,这允许他们遍历实现特定接口的所有实体 - 我想做类似的事情,但是在涉及子实体的查询上。
我正在使用 SQL Server 2012、EF5 和 .Net 4.5。