NHibernate QueryOver,其中值为IN列表属性/字段
本文关键字:列表 IN 属性 字段 QueryOver NHibernate | 更新日期: 2023-09-27 18:27:18
我有一个非常基本的模型:
public class Blog : UniqueEntity<Guid>
{
public virtual string Name { get; set; }
public virtual string Tagline { get; set; }
public virtual string ActiveThemeName { get; set; }
public virtual string MainDomain { get; set; }
public virtual IList<string> DomainAliases { get; set; } = new List<string>();
}
我需要编写一个NHibernate QueryOver
查询WHERE "hostname string" IN DomainAliases
。
我在SO上找到了很多关于如何反向操作的答案,即:`WHERE DomainAliases包含"主机名字符串",但没有一个是我需要的。
解决方案,如下所述:
NHibernate:选择元素袋中有条目的项目
应该是这样的:
var demos = this.session.CreateCriteria<Blog>()
.CreateAlias("DomainAliases", "d")
// .elemnts is what we need
.Add(Restrictions.Eq("d.elements", "hostname string"))
.List<Blog>();
同时检查: