setparameter等

时间:2011-03-07 11:18:18

标签: c# nhibernate

我想使用NHibernates setparameter-feature,但我不知道如何实现where Lastname like '%xyz%'之类的东西(请注意两个%):

string hql = "... where Lastname like :Lastname";
// ...
hibQuery.SetParameter("Lastname", myValue);

不幸的是,这不会导致搜索不清晰。要么我正确地写了姓氏,要么找不到任何东西:'Smi' - >找不到史密斯。

我该如何纠正?

sl3dg3

2 个答案:

答案 0 :(得分:2)

你可以做任何一次

hql = "... where Lastname like :Lastname";
query.SetParameter("Lastname", '%' + myValue + '%');

hql = "... where Lastname like concat('%', :Lastname, '%')";
query.SetParameter("Lastname", myValue);

答案 1 :(得分:0)

hibQuery.SetParameter("Lastname", "%"+myValue+"%");