Chr*_*ris 5 nhibernate queryover
大家好NHibernate大师!
鉴于这两个类:
public class User {
long Id;
string Name;
}
public class Project {
long Id;
User Owner;
IList<User> Managers;
...
}
Run Code Online (Sandbox Code Playgroud)
我想使用QueryOver(不使用条件"魔术字符串"别名)进行查询,以获取所有项目,其中user1作为所有者或作为管理员之一.
我知道如何分开:
但我不知道怎么写分离.
如果有人有想法,那对我很有帮助.
提前致谢,
克里斯
就像是:-
User manager = null;
var query = session
.QueryOver<Project>()
.JoinAlias(j => j.Managers, () => manager)
.Where(w => manager.Name == user1 || w.Owner == user1)
.List<Project>();
Run Code Online (Sandbox Code Playgroud)
编辑以将过滤器更改为Name(Id正如OP指出的那样):-
.Where(w=>manager.Id == user1.Id || w.Owner.Id == user1.Id)
Run Code Online (Sandbox Code Playgroud)
edit2将内部更改为左侧使用
.JoinAlias(j => j.Managers, () => manager).left
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1021 次 |
| 最近记录: |