0
QueryOverでwhere句をオプションで追加するにはどうすればよいですか?NhibernateとQueryOverでオプションのwhereパラメータを追加する
TL; DR
私は、アプリケーションのための検索フォームを実装し、QueryOverを使用しようとしています。
検索パラメータの一部はオプションです。
var query =
myDatabase.QueryOver(() => customerAlias)
.JoinAlias(() => customerAlias.Projects,() => projectAlias)
.Where(() => projectAlias.IsClosed >= 1)
... possibly add more stuff
しかし、条件が2つの場合はどうなりますか? 'query = query.AddWhere(...)'? – LosManos
'query.Where(condition1).Where(condition2)'対 'query.Where(condition1 && condition2)'はもちろん、通常のLINQではありますが、Nhibernateは同じものを生成すると思われますこれらの両方からのSQLクエリ。しかし、あなたもこれを行うことができます:http://stackoverflow.com/questions/22944722/what-is-the-best-way-to-dynamically-add-to-a-where-clause-in-a-nhibernate-query #22948137インラインエイリアスは取得できませんが。 – starlight54
私のオリジナルのコメント(つまり私)を理解できなかった人には、私のコメントは 'query.Where(...); query.Where(...)'という2番目の 'Where'コールは、最初の1つですが、代わりに連結されています。回答は正しいです。 – LosManos