2016-10-19 3 views
0

Containsを使用するときにnhibernateが生成するクエリをエスケープしたいと思います。
私は、SQL Server Contains("%")を使用していると仮定し、NHibernateはlike '[%]'を生成するはずです。Linq-NhibernateがContains用に生成するSQLを変更する方法

これは、別の拡張方法(MyOwnContainの実装と使用)を使用せずに取得したいと考えています。今後のNH 4.1は、これらの関連する問題の少なくとも一つ修正されますが、NHibernateは現在利用可能なバージョンと
Linq to NHibernate extensibility for custom string query operations?

答えて

1

ない可能:答えは、この可能性があり、この場合には

https://nhibernate.jira.com/browse/NH-3726を(などのための脱出())

https://nhibernate.jira.com/browse/NH-3829など、((含まれていためにエスケープ))%ワイルドカードは括弧で囲むことで、あなたのケースで無効にすることができますので、

しかし、あなたが行うことができるはずこれはContains()を呼び出す前に自分自身で行います。上記がNHで最終的に実施されるときの状況に注意して準備してください。

関連する問題