NHibernate如何编写一个类似于列表或数组中的任何项的查询
本文关键字:列表 数组 任何项 类似于 查询 一个 何编写 NHibernate | 更新日期: 2023-09-27 17:52:58
我正在努力解决以下问题。有人能告诉我怎么做吗?
如何将nhibernate查询写入下面的
select * from tableA where description like (*Any of the items from a lst*)
List<string> lst = new List<string>
{
"AAA","BBB","CCC","DDD"
}
目前我正在选择所有的记录,并在内存集合上应用此过滤。
实际代码:
private List<string> lst = new List<string>{
"AMV",
"BMVi",
"CMV",
"DTL"
}
public virtual IEnumerable<Asset> ReplayAssets(DateTime updatedDateTimeFrom, DateTime updatedDateTimeTo)
{
Asset assetAlias = null;
var query = Session.QueryOver(() => assetAlias);
//Here i need to add something like
query.where(()=>assetAlias.title.like(*any item in the above list lst* )
query.Where(() => assetAlias.LastUpdatedDate.IsBetween(updatedDateTimeFrom).And(updatedDateTimeTo));
return query.Future<Asset>();
}
谢谢
很简单。
var lst = new List<string>
{
"AAA", "BBB", "CCC", "DDD"
};
var items = Session.Query<TableA>
.Where(x => lst.Contains(x.Description))
.ToList();