加入nHibernate
我有以下实体加入nHibernate,nhibernate,Nhibernate,我有以下实体 public class Category { Id Name } public class Product { Id Name List<Category> list; } 公共类类别 { 身份证件 名称 } 公共类产品 { 身份证件 名称 名单; } 我想做的是使用nHibernate按类别名称获取所有产品 任何帮助都将不胜感激 提前感谢最简单的方法-使用Linq到nhibernate 看起来是这样
public class Category
{
Id
Name
}
public class Product
{
Id
Name
List<Category> list;
}
公共类类别
{
身份证件
名称
}
公共类产品
{
身份证件
名称
名单;
}
我想做的是使用nHibernate按类别名称获取所有产品
任何帮助都将不胜感激
提前感谢最简单的方法-使用Linq到nhibernate 看起来是这样的:
public void GetProductsByCategoryName(string categoryName){
Session.Linq<Product>(x=>x.list.Any(z=>z.Name=categoryName));
}
public void GetProductsByCategoryName(字符串categoryName){
Session.Linq(x=>x.list.Any(z=>z.Name=categoryName));
}
最简单的方法-使用Linq到nhibernate
看起来是这样的:
public void GetProductsByCategoryName(string categoryName){
Session.Linq<Product>(x=>x.list.Any(z=>z.Name=categoryName));
}
public void GetProductsByCategoryName(字符串categoryName){
Session.Linq(x=>x.list.Any(z=>z.Name=categoryName));
}
谢谢您的帮助
我已经用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>();
}
public IList GetAllProductsByCategoryName(字符串名称)
{
return Session.CreateQuery(“从产品p左连接获取p.Categories c,其中c.Name=:Name”).SetParameter(“Name”,Name).List();
}
再次谢谢你谢谢你的帮助
我已经用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>();
}
public IList GetAllProductsByCategoryName(字符串名称)
{
return Session.CreateQuery(“从产品p左连接获取p.Categories c,其中c.Name=:Name”).SetParameter(“Name”,Name).List();
}
再次感谢你