【发布时间】:2014-08-20 21:12:33
【问题描述】:
我的查询在表中返回 2 个相同的客户记录时遇到问题, 所以在我的数据库中,我得到了一个客户表、一个 CustomerProduct 表和一个 Product 表, 客户可以拥有许多产品。
public IPagedList<Customer> SearchCustomer(string product, string address, string county)
{
ICriteria criteria = Session.CreateCriteria<Customer>()
.CreateAlias("CustomerProducts", "cp")
.CreateAlias("cp.Product", "p");
if (!string.IsNullOrEmpty(product))
{
criteria.Add(Restrictions.Like("p.Name", product));
}
if (!string.IsNullOrEmpty(address))
{
criteria.Add(Restrictions.Like("Address1", address, MatchMode.Anywhere));
}
if (!string.IsNullOrEmpty(county))
{
criteria.Add(Restrictions.Like("County", county, MatchMode.Anywhere));
}
return criteria.Future<Customer>();
}
上面查询两次返回一个客户记录,因为客户有很多记录!!
任何想法/想法如何解决这个问题,它会很棒
谢谢你
【问题讨论】:
标签: sql nhibernate