SQLで私は書くことができます
SELECT blah FROM Clients
Where @p1 Like '%'+lastname+'%'
これを Nhibernate の CreateCriteria で表現するにはどうすればよいですか?
私はもう試した s.CreateCriteria<Client>.Add(Restrictions.Where<Client>(c => "something".Contains(c.LastName))
しかし、エラーが発生します
System.Exception: 認識されないメソッド呼び出し: System.String:Boolean Contains(System.String)\r\n at NHibernate.Impl.ExpressionProcessor.ProcessCustomMethodCall(MethodCallExpression methodCallExpression)
私も試してみました
s.CreateCriteria<Client>.Add(Restrictions.Where<Client>(c => "something".IndexOf(c.LastName) != -1))
しかし得る
「タイプ 'TrinityFinance.Data.Entities.Client' の変数 'c' がスコープ '' から参照されていますが、定義されていません」
ここでは順序が重要であることに注意してください。
@p1 Like '%'+lastname+'%'
と同じではありません
lastname Like '%'+@p1+'%'