Nhibernate – 在SelectList上列出
我正在使用NHibernate,我遇到了一个问题。
我的项目中有这些实体:客户端:
public class Client { public virtual int Id { get; set; } public virtual string Name { get; set; } public virtual string UserName { get; set; } public virtual string Password { get; set; } public virtual IList Dates { get; set; } public Client() { Dates = new List(); } }
日期:
public class Date { public virtual int Id { get; set; } public virtual DateTime DateTime { get; set; } public virtual Client Client { get; set; } public virtual int IsVisible { get; set; } }
我想获取每个客户端,它的id,名称和日期列表,并且对于该列表中的每个日期,我只想获取id和日期。
所以我尝试了以下内容:
Date dateAlias = null; var list = _session.QueryOver() .JoinAlias(x => x.Dates, () => dateAlias) .SelectList(lst => lst .Select(x => x.Id) .Select(x => x.Name) .Select(() => dateAlias)) .List();
还有这个:
Date dateAlias = null; var list = _session.QueryOver() .JoinAlias(x => x.Dates, () => dateAlias) .SelectList(lst => lst .Select(x => x.Id) .Select(x => x.Name) .Select(() => dateAlias)) .List();
但结果是空的。 我在这做错了什么? 这是我想要的吗?
您可以尝试此查询,它可能对您有所帮助。
IList clientData = _session.QueryOver () .JoinQueryOver(x => x.Dates) .Where(x => x.Id && x => x.Name)).List();