流畅的NHibernate -过滤器连接表不工作

本文关键字:连接 工作 过滤器 NHibernate | 更新日期: 2023-09-27 18:17:00

我得到了以下表格:

Public Class Category {
    public int Id { get; set; }
    public string Name { get; set; }
}
Public Class Password {
    public int Id { get; set; }
    public string Name { get; set; }
    public string PasswordText { get; set; }
    public string Description { get; set; }
    public IList<Category> Categories { get; set; }
    public string CreateUser { get; set; }
    public string ModifyUser { get; set; }
    public DateTime? ModifyDate { get; set; }
    public bool Deleted { get; set; }
}

我还得到了一个名为Password_User的连接表

现在我想从类别中过滤Id之后的所有密码。Id我从我的前端代码这是工作(我得到正确的Id)。其实我也试过,但我的问题是列表总是一样的。

我的例子是:

if (categoryFilter > 1) {
   var PasswordEntity = _pagedDataQueryProcessor.GetDefaultQuery<Data.Entities.Password>();
   _pagedByIdDataQueryProcessor.GetById<Data.Entities.Password>(categoryFilter);
   PasswordEntity.Where(
       Restrictions.Disjunction()
            .Add(Restrictions.On<Data.Entities.Password>(x => x.Categories).IsLike(categoryFilter))
       );
} 

if在开始的地方是因为我没有一个Id为1的Category因为我不止在一个地方使用这个列表我把它放在了前端我给了一个Category Id 1和一个Name

当你需要更多的信息而不是说出来的时候。

谁能帮我,我不总是得到完整的列表。我想要过滤列表

流畅的NHibernate -过滤器连接表不工作

PasswordEntity将包含所有Password实体的集合,因为您没有捕获通过调用Where方法返回的过滤集合。