请不要给我在兰巴如何执行此Linq-to-Sql连接?
I have two tables.
Employees:
pk
name
ExpenseTeamMembers:
pk
expMgrPk
empPk
Example: pk expMgrPk empPk
1 7 81
2 7 101
3 13 99
4 13 22
5 13 56
基本上第一表是员工列表,第二个是用于跟踪表,其员工属于哪个经理帮助。
第一个sql查找工作和mgr让我在组合框中选定名称的pk。
我想在连接中做什么是查找expMgrPk并查看哪些员工属于它并返回他们的名称而不是他们的PK。我很漂亮,需要一点帮助。再次请不要给我帮助兰巴!由于
private void cboManagers_SelectedIndexChanged(object sender, EventArgs e)
{
if (cboManagers != null)
{
string selectedMgr = (string)cboManagers.SelectedValue;
using (DataClasses1DataContext db = new DataClasses1DataContext())
{
int mgr = (from f in db.employees
where f.name == selectedMgr
select f.pk).FirstOrDefault();
var emps = (from m in db.employees
join t in db.expenseTeamMembers on m.pk equals t.pK
where t.expMgrPk == mgr
select m.name).ToList();
lstSelected.DataSource = emps;
}
}
}
如果你的关系设置正确,你不应该直接处理PK。 – 2012-07-23 01:03:54
你的加入应该是'm.pk等于t.empPk'。另外,我没有在winforms中工作,但是你不能在列表框中存储一个值和文本吗?这样你就可以避免'mgr'查询,并简单地将列表框选定的值传递给'emps'查询。 – 2012-07-23 01:12:54
所选管理器是组合框而不是列表框。我解决了我的问题,但仍然无法正常工作。我认为我错过了一条线... – 2012-07-23 01:24:14