基準に制限を加えない NHibernate 基準を探しています。この理由は、いくつかの入力パラメーターを基準に追加される基準に変換するメソッドがあるためです。制限を適用する必要のない入力パラメータのコンスタレーションがあります。したがって、ある種のダミー基準を返したいと思います。
NHibernate にそのようなものはありますか?
よろしく、
オリバー・ハナッピ
基準に制限を加えない NHibernate 基準を探しています。この理由は、いくつかの入力パラメーターを基準に追加される基準に変換するメソッドがあるためです。制限を適用する必要のない入力パラメータのコンスタレーションがあります。したがって、ある種のダミー基準を返したいと思います。
NHibernate にそのようなものはありますか?
よろしく、
オリバー・ハナッピ
常に true である空の Conjuction を使用できます (「1 = 1」に解決されます)。
例えば。
ICriterion conditionalCriteria = includeCriteria
? Restrictions.Eq("someEntity.Field", variable)
: (ICriterion) Restrictions.Conjuction();
var query = Session
.CreateCriteria<SomeEntity>("someEntity")
.Add(conditionalCriteria)
.SetResultTransformer(Transformers.AliasToBean<SomeEntity>())
.List<SomeEntity>();
「id」が主キーであるエンティティに対してクエリを実行する場合(したがって、nullになることはありません)、Restrictions.IsNotNull("id")のようなことを行うことができます。論理的な制限がないと評価されるものはすべて、要件に基づいて使用できます。