gpt4 book ai didi

c# - Linq to NHibernate 返回名称以字符串列表内容开头的实体

转载 作者:太空宇宙 更新时间:2023-11-03 13:26:05 25 4
gpt4 key购买 nike

是否可以在 Linq to NHibernate 中执行类似的操作 - “从列表中获取名称以任何字符串开头的所有实体”。

我有这个问题:

var result=session.Query<Entity>()
.Where(e=> listOfStrings.Any(s=> e.Name.StartsWith(s)))
.ToList();

但是我明白了

"NotSupportedException: Specified method is not supported."

最佳答案

试试这个:

var query = session.QueryOver<Entity>();
var disjunction = new Disjunction();

foreach (var s in listOfStrings)
{
disjunction.Add(Restrictions.On<Entity>(e => e.Name)
.IsLike(s, MatchMode.Start));
}

var result = query.Where(disjunction).List();

关于c# - Linq to NHibernate 返回名称以字符串列表内容开头的实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22407537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com