使用Lambda表达式选择对象数组中变量的所有不同值

LRI*_*RID 3 c# lambda

我有一个属性为的对象数组ProductId。我想使用lambda表达式来选择ProductId对象数组中所有不同的值products

在这里我得到的产品

var products = Database.SqlQuery<StructuredProduct>("query").ToArray();
Run Code Online (Sandbox Code Playgroud)

而且我可以按ProductId的不同值进行分组,但它仍返回对象数组,而不是ProductIds数组

var productIds= products.GroupBy(p => p.ProductId).Select(group => group.First()).ToArray();
Run Code Online (Sandbox Code Playgroud)

关于如何在products数组上使用Lambda表达式获取所有不同值的任何想法ProductIds

Joe*_*orn 8

var productIds= products.Select(p => p.ProductId).Distict();
Run Code Online (Sandbox Code Playgroud)

但是,作为"query"sql命令的一部分,直接在数据库上执行此操作可能会更好。