Nhibernate-QueryOver。我喜欢多个条件

Nhibernate-QueryOver。我喜欢多个条件,nhibernate,queryover,Nhibernate,Queryover,我不知道如何创建具有多个条件的IsLike查询 criteria = criteria.Add(Restrictions.Like("IpAdress", "%" + request.Keyword + "%") || Restrictions.Like("MacAdress", "%" + request.Keyword + "%") || Restrictions.Like("al.SerialNumber", "%" + request.K

我不知道如何创建具有多个条件的IsLike查询

criteria =  criteria.Add(Restrictions.Like("IpAdress", "%" + request.Keyword + "%") ||
            Restrictions.Like("MacAdress", "%" + request.Keyword + "%") ||
            Restrictions.Like("al.SerialNumber", "%" + request.Keyword + "%"));
如何将上面的查询转换为IQueryOver格式


谢谢

您尚未发布实体的外观,但您可以按照以下思路编写一些内容:

query.Where(Restrictions.Disjunction()
    .Add(Restrictions.On<Type>(x => x.IpAddress).IsLike(request.Keyword))
    .Add(Restrictions.On<Type>(x => x.MacAdress).IsLike(request.Keyword))
    .Add(Restrictions.On<Type2>(x => x.SerialNumber).IsLike(request.Keyword)));
以下是一些类似的SO问题,以获取更多信息:

query.Where(
    Restrictions.On<Type>(x => x.IpAddress).IsLike(request.Keyword) ||
    Restrictions.On<Type>(x => x.MacAdress).IsLike(request.Keyword) ||
    Restrictions.On<Type2>(x => x.SerialNumber).IsLike(request.Keyword));