2009-06-16 68 views
0

我剛剛開始使用db4o,我偶然發現了一個問題。db4o查詢子對象

我有一個子對象的對象(它可能不是正確的詞,但我希望你明白我的意思)。

子對象包含兩個日期,一個開始日期和一個結束日期。

我想顯示主對象是否至少有一個子對象,其中DateTime.Now介於開始日期和結束日期之間。

我必須使用原生查詢或SODA(linq不在該項目中工作)。

在此先感謝!

/弗雷德裏克

回答

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(); 
+0

謝謝,這個固定我的問題也是如此。 – Contango 2011-02-23 17:57:40