我怎样才能在 ORMLite 中进行自我加入
How can I do a self join in ORMLite
我正在尝试根据主管的主管获取特定工头的所有时间条目。但是,我似乎无法在 ORMLite 中编写自连接查询。请参阅下面我的数据结构和代码。
public class User
{
[AutoIncrement]
public int Id { get; set; }
public string Name { get; set; }
[References(typeof(User))]
public int SupervisorId { get; set; }
}
public class TimeSheet
{
[AutoIncrement]
public int Id { get; set; }
[References(typeof(User))]
public int ForemanId { get; set; }
}
var query = db.From<TimeSheet>()
.Join<User>()
.Join<User, User>(); // not sure how to write this one.
// .Where(super => super.SupervisorId = 2)
我创建了一个 sample gist 来尝试更好地展示我的尝试。
var query = db.From<TimeSheet>()
.Join<User>()
.Join<User, User>((p, q) => p.Id == q.SupervisorId, db.JoinAlias("u2"));
我正在尝试根据主管的主管获取特定工头的所有时间条目。但是,我似乎无法在 ORMLite 中编写自连接查询。请参阅下面我的数据结构和代码。
public class User
{
[AutoIncrement]
public int Id { get; set; }
public string Name { get; set; }
[References(typeof(User))]
public int SupervisorId { get; set; }
}
public class TimeSheet
{
[AutoIncrement]
public int Id { get; set; }
[References(typeof(User))]
public int ForemanId { get; set; }
}
var query = db.From<TimeSheet>()
.Join<User>()
.Join<User, User>(); // not sure how to write this one.
// .Where(super => super.SupervisorId = 2)
我创建了一个 sample gist 来尝试更好地展示我的尝试。
var query = db.From<TimeSheet>()
.Join<User>()
.Join<User, User>((p, q) => p.Id == q.SupervisorId, db.JoinAlias("u2"));