加入nHibernate

时间:2010-09-26 13:30:06

标签: nhibernate

我有以下实体

public class Category 
{
      Id
      Name
}
public class Product 
{
      Id
      Name
      List<Category> list;
}

我想要做的是使用nHibernate

按类别名称获取所有产品

任何帮助将不胜感激

先谢谢

2 个答案:

答案 0 :(得分:4)

最简单的方法 - 使用Linq来禁用。

看起来像这样:

public void GetProductsByCategoryName(string categoryName){
  Session.Linq<Product>(x=>x.list.Any(z=>z.Name=categoryName));
}

答案 1 :(得分:-1)

感谢您的帮助

我已经使用Join解决了问题,我在我的版本中没有使用NHibernate.Linq.dll,我已经在互联网上下载了它

我的解决方案是

public IList<Product> GetAllProductsByCategoryName(string name)
{
    return Session.CreateQuery("from Product p left join fetch p.Categories c where c.Name = :name").SetParameter("name", name).List<Product>();

}

再次感谢您