db4o查询子对象

时间:2009-06-16 07:45:11

标签: db4o

我刚刚开始使用db4o,我偶然发现了一个问题。

我有一个带有子对象的对象(可能不是正确的单词,但我希望你明白我的意思)。

子对象包含两个日期,一个开始日期和一个结束日期。

我想显示主对象,如果它至少有一个子对象,其中DateTime.Now位于开始和结束日期之间。

我必须使用本机查询或SODA(linq在项目中不起作用)。

提前致谢!

/弗雷德里克

1 个答案:

答案 0 :(得分:4)

我会尝试这样的事情:

IQuery query = db.Query();
query.Constrain(typeof(YourObjectType));
IConstraint constr1 = query.Descend("enddate")
    .Constrain(DateTime.Now).Greater();
IConstraint constr2 = query.Descend("startdate")
    .Constrain(DateTime.Now).Smaller();
query.Constrain(constr1).And(constr2);
IObjectSet result = query.Execute();