0

我正在开发一个 ASP.NET MVC 应用程序。我有两个查询,我想从这两个查询中获取评论记录。

查询一

  var poList = (from po in db.PurchaseOrders 
                where po.Id > 0 
                select po into newPO
                select new { Name = newPO.PONo,  Id = newPO.Id });

查询二

var poList2 = (db.Employees.Where(x => x.Id == 25)
              .Select(po => new { Name = po.PONo, Id = po.Id }));

现在我正在尝试使用以下语句从以上两个查询中获取常见记录

poList.Join(poList2, a => a.Name, b => b.Name, (a, b) => new { Name = b.Name, Id = b.Id });

但我根本没有得到共同的记录。

我必须在声明中做出什么改变?

4

2 回答 2

1

如果“公共记录”是指与 相同的记录NameId则可以使用Intersect扩展方法。

var result = poList.Intersect(poList2);
于 2013-07-09T11:08:40.567 回答
0

你试过了吗?

poList.Concat(poList2).Distinct().ToList()
于 2013-07-09T09:27:20.257 回答