如何在LINQ中从具有多个ID的记录中查询名称
我有一个表[a],其中包含CreatedBy(ID)、AuthorizedBy(ID)、SentTo(ID)等列,我需要将它们连接到一个包含用户名(UserID、FullName)的表[B]。如何编写一个连接,将表a的每条记录连接到表B中的多条记录,以使用LINQ填写CreatedBy/AuthorizedBy/SentTo名称?可以尝试如下,基本上您必须用a连接B三次如何在LINQ中从具有多个ID的记录中查询名称,linq,join,one-to-many,Linq,Join,One To Many,我有一个表[a],其中包含CreatedBy(ID)、AuthorizedBy(ID)、SentTo(ID)等列,我需要将它们连接到一个包含用户名(UserID、FullName)的表[B]。如何编写一个连接,将表a的每条记录连接到表B中的多条记录,以使用LINQ填写CreatedBy/AuthorizedBy/SentTo名称?可以尝试如下,基本上您必须用a连接B三次 form a in A join b in B on b.Id = a.Createdby join b1 in B on
form a in A
join b in B on b.Id = a.Createdby
join b1 in B on b1.Id = a.Authrizedby
join b2 in B on b2.Id = a.SentTo
select new {
a.Id,
CreatedBy= b.FullName,
AuthorizedBy = b1.FullName,
SentTo= b2.FullName};
或
这对你有用吗?你可以添加更多的细节,包括代码。请在此查看如何提出好问题:
from a in A
select new {
a.ID
CreatedBy= b.FirstOrDefault(a.CreatedBy== b.Id).FullName,
AuthorizedBy = b.FirstOrDefault(a.AuthorizedBy== b.Id).FullName,
SentTo= b.FirstOrDefault(a.SentTo== b.Id).FullName
}