首页 > 解决方案 > 加入并在外来对象/键上获得不同 Linq

问题描述

我有一个这样的模型

public class Product
{
    public int Id { get;set;}
    ...
    public virtual ICollection<Supplier> Suppliers {get;set;} 
 }

public class Suppliers
{
   public int Id {get;set;}
   ...
   public string Name {get;set;}
}

我的 Linq 查询是这样构造的,以获取唯一的产品

var suppliers = _context.Products.Where(condition).Select(u => u.Suppliers).ToList(); //

此查询的结果返回List<Iqueryable<Supplier>>如何从该列表中获取供应商名称列表?

标签: c#linq

解决方案


感谢 Camilo Terevinto,此查询有效。

var suppliers = _context.Products.Where(condition).SelectMany(u => u.Suppliers).GroupBy(u => u.Name).Select(u => u.First()).ToList()

推荐阅读