AGu*_*ald 2 nhibernate sql-like
我有一个NHibernate搜索函数,我接收整数并希望返回结果,其中至少开始与整数重合,例如
收到整数:729
返回:729445,7291等
数据库列的类型为int,Foo的属性"Id"也是如此.
但
int id = 729;
var criteria = session.CreateCriteria(typeof(Foo))
criteria.Add(NHibernate.Criterion.Expression.InsensitiveLike("Id", id.ToString() + "%"));
return criteria.List<Foo>();
Run Code Online (Sandbox Code Playgroud)
确实导致错误(无法将参数字符串转换为int32).代码,解决方法或其他解决方案是否有问题?
小智 8
这个怎么样:
int id = 729;
var criteria = session.CreateCriteria(typeof(Foo))
criteria.Add(Expression.Like(Projections.Cast(NHibernateUtil.String, Projections.Property("Id")), id.ToString(), MatchMode.Anywhere));
return criteria.List<Foo>();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2898 次 |
| 最近记录: |