C# LINQ联盟未返回想要的结果
在过去的几个小时里,我一直在努力解决这个问题,但一点运气都没有 首先,让我向您展示我的数据库的外观(只是其中的一个重要部分): [radno_mjesto]=工作 [grupa_radnih_mjesta]=工作组(属于特定组的工作;例如,如果组名为法官,则属于该组的工作将是:最高法院法官,行政法法官,高级法官,等等) [osoba]=人 我想做的是询问所有属于特定工作组的人,但几个小时后,我没能成功地做到这一点。我尝试了以下代码的各种组合,得到的结果只有两个:所有人(不管他们的工作是什么)或只从事特定工作的人(在本例中是工作组中的最后一份工作) 任何帮助都将不胜感激。这应该可以C# LINQ联盟未返回想要的结果,c#,asp.net,linq,union,C#,Asp.net,Linq,Union,在过去的几个小时里,我一直在努力解决这个问题,但一点运气都没有 首先,让我向您展示我的数据库的外观(只是其中的一个重要部分): [radno_mjesto]=工作 [grupa_radnih_mjesta]=工作组(属于特定组的工作;例如,如果组名为法官,则属于该组的工作将是:最高法院法官,行政法法官,高级法官,等等) [osoba]=人 我想做的是询问所有属于特定工作组的人,但几个小时后,我没能成功地做到这一点。我尝试了以下代码的各种组合,得到的结果只有两个:所有人(不管他们的工作是什么)或
if (chkGrupaRadnihMjesta.Checked) {
int id = Convert.ToInt32(GrupaRadnihMjesta.SelectedValue);
var sveOsobe = (
from p in db.osobas
join l in db.grupe_radnih_mjesta_radna_mjesta on l.rm_id equals p.rm_id
where l.grm_id == id
select p
).Distinct();
}
我在这里猜名字 这应该行得通
if (chkGrupaRadnihMjesta.Checked) {
int id = Convert.ToInt32(GrupaRadnihMjesta.SelectedValue);
var sveOsobe = (
from p in db.osobas
join l in db.grupe_radnih_mjesta_radna_mjesta on l.rm_id equals p.rm_id
where l.grm_id == id
select p
).Distinct();
}
我在这里猜名字 这不是你的错,但是对于一个不熟悉你的语言的人来说,名字很难记住。看起来好像应用了替换密码。也许你可以翻译它们?你知道你不需要在LINQ上下文中使用与数据库中使用的完全相同的名称,你可以给表和列指定有意义的名称,并且仍然映射到模糊的名称。帮你自己(和我们)一个忙吧。甚至很难理解你的代码在做什么。实际上,这个项目是我从第三个人那里继承的。就我个人而言,我确实使用较短的表名。这不是你的错,但对于一个不熟悉你的语言的人来说,表名很难记住。看起来好像应用了替换密码。也许你可以翻译它们?你知道你不需要在LINQ上下文中使用与数据库中使用的完全相同的名称,你可以给表和列指定有意义的名称,并且仍然映射到模糊的名称。帮你自己(和我们)一个忙吧。甚至很难理解你的代码在做什么。实际上,这个项目是我从第三个人那里继承的。就我个人而言,我确实使用较短的表名。谢谢,这就是解决方案!谢谢,这就是解决办法!