1

こんにちは、コードからプログラムでnhibernateからクエリオーバーを構築するオプションはありますか?

制限がいくつあるか、オブジェクトのリストからクエリオーバーを行う自動で構築しているテーブルの数はわかりません。

4

1 に答える 1

5

動的制限について話している場合は、次のことができます。

var query = _session.QueryOver<Something>();
if(someterm!=null)
   query.Where(x=>x.SomeTerm==someTerm);

if(someotherterm!=null)
   query.Where(x=>x.SomeOtherTerm==someotherterm);

var results = query.List();

必要に応じて、動的に参加することもできます。

if(something!=null){
  SomeReference srAlias = null;
  query.JoinAlias(x=>x.SomeReference,()=>srAlias, JoinType.LeftOuterJoin)
       .Where(x=>srAlias.Something==something);
}
于 2012-05-09T06:49:21.377 に答える