我有以下数据模型:
Page
- Id // Pk
- Type // int
Section
- Id // Pk
- Page // Fk
Comment
- Id // Pk
- Section // Fk
- Date // DateTime
我将尝试查询与某个页面相关的所有评论(比如说页面ID为2且类型为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的Page”。这通常表示映射错误,但在所有其他情况下都有效,因此我倾向于认为错误在查询中。
更糟糕的是,在某些情况下,Comment.Section可能为空(有一些评论与部分或页面没有关联)。在这种情况下,我想忽略这些评论。
有什么建议吗?
谢谢!