私はlinq2db4oで次のことが可能であることを知っています
from Apple a in db
where a.Color.Equals(Colors.Green)
select a
ただし、必要なのは、クエリを条件付きで作成できるものです (他の linq バリアントでできるように)。
public IEnumerable<Apple> SearchApples (AppleSearchbag bag){
var q = db.Apples;
if(bag.Color != null){
q = q.Where(a=>a.Color.Equals(bag.Color));
}
return q.AsEnumerable();
}
現実世界の状況では、検索バッグは多くのプロパティを保持し、埋められたプロパティのすべての可能な組み合わせをキャッチする巨大な if-tree を構築することは狂人の仕事です。
初コール可能
var q = (from Color c in db select c);
そこから続けます。しかし、これはまさに私が探しているものではありません。
免責事項:ほぼ11か月前の私の質問のほぼ複製。
これは、私が問題をよりよく理解しているので、もう少し明確です。今では、db4o 開発者の一部がこれをキャッチできることを願っています。
助言がありますか?