如何使用NHibernate.Linq生成此查询?
WHERE this_.Name LIKE @p0; @p0 = 'test' // Notice NO % wild card
注意,这不是Linq To Sql或Entity Framework。这是NHibernate。
编辑:
这是使用ICriteria的所需查询:
criteria.Add(Expression.Like("Name", "test"));
return criteria.List<Theater>();
最佳答案
对于NH 4(可能更早一些),可以在Like
命名空间NHibernate.Linq
中使用内置的Like(this string matchExpression, string sqlLikePattern)
字符串扩展名。 (在 NHibernate.Linq.SqlMethods
扩展类上定义。)
using NHibernate.Linq;
...
session.Query<Theater>()
.Where(t => t.Name.Like("test"));
关于linq - NHibernate.Linq赞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1689653/