C# Linq to NHibernate中任何and或查询的问题

C# Linq to NHibernate中任何and或查询的问题,c#,linq,nhibernate,C#,Linq,Nhibernate,我在使用Linq到NHibernate的一些查询中遇到一些问题。这些查询对我来说在SQL中做起来相当简单,但由于某些原因,我在Linq中遇到了问题 例如,如果我想找到所有实体,它们都有这样附加的标签列表(我已经大大简化了此消息的代码): 公共类资产 { 公共字符串名称{get;set;} 公共IList标记{get;set;} } 类标签 { 公共字符串名称{get;set;} } var tagstrings=stringofchosentags.Split(',).ToList(); var

我在使用Linq到NHibernate的一些查询中遇到一些问题。这些查询对我来说在SQL中做起来相当简单,但由于某些原因,我在Linq中遇到了问题

例如,如果我想找到所有实体,它们都有这样附加的标签列表(我已经大大简化了此消息的代码):

公共类资产
{
公共字符串名称{get;set;}
公共IList标记{get;set;}
}
类标签
{
公共字符串名称{get;set;}
}
var tagstrings=stringofchosentags.Split(',).ToList();
var actualtags=repository.GetAll().Where(x=>x.Name.IsAnyOf(tagstrings)).ToList();
var results=repository.GetAll().Where(x=>x.Tags.IsAnyOf(actualtags)).ToList();
我知道没有IsAnyOf函数,但这是我想要实现的,但我不知道最好的方法

任何指导将不胜感激,任何其他信息,你可以点我从用户输入的查询将是伟大的


提前感谢。

目前在contrib的NHibernate.Linq项目不会真正向前推进。Strong先生刚刚完成了NHibernate主干中AST解析器的修复,并将在几周内开始全新LINQ提供商的工作(他表示,他正在等待re LINQ项目的进展,首先是一些急需的补充)

public class Asset
{
    public string name {get;set;}
    public IList<Tag> Tags {get;set;}
}

class Tag
{
   public string Name {get;set;}
}


var tagstrings = stringofchosentags.Split(',').ToList();

var actualtags = repository.GetAll<Tag>().Where(x => x.Name.IsAnyOf(tagstrings)).ToList();

var results = repository.GetAll<Asset>().Where(x => x.Tags. IsAnyOf(actualtags)).ToList();