我有以下数据模型:
Page
- Id // Pk
- Type // int
Section
- Id // Pk
- Page // Fk
Comment
- Id // Pk
- Section // Fk
- Date // DateTime
我正在尝试在时间限制内查询与某个页面关联的所有评论(比如 page.id = 2 和 page.Type = 1)。我试过这样:
var criteria = session.CreateCriteria<Comment>()
.Add(Restrictions.Eq("Section.Page.Id", pageId))
.Add(Restrictions.Eq("Section.Page.Type", pageType))
.Add(Restrictions.Ge("Date", start))
.Add(Restrictions.Lt("Date", end));
但是,这失败了,因为我收到一条错误消息“无法解析属性:页面:TestNamespace.Comment”。这通常表示映射错误,但它适用于所有其他情况,所以我倾向于相信错误在于查询。
更糟糕的是,Comment.Section 在某些情况下可能为空(有些评论与部分或页面无关)。在那种情况下,我想忽略这些评论。
有什么建议吗?
谢谢!