我正在使用 EF 并有一个上下文,我可以使用 _inventoryContext.Items 从中获取 Item 对象的集合。现在,这些项目对象有一个名为 Carrier 的字符串值。假设 Items 集合中有 5 个项目,它们具有这些 Carrier 值:
"A", "A", "B", "C", "C"
如何使用 _inventoryContext.Items 取回唯一承运人值?
"A", "B", "C"
注意
var carriers = _inventoryContext.Items.Select(i => i.Carrier).Distinct();
不起作用;我得到“不支持'Distinct'方法”,没有内部异常。
我正在使用 SQL Server 2008 Express。 Items
是 DataServiceQuery<Item>
及其 Carrier
属性是一个字符串。
最佳答案
您的示例应该有效,但您可以尝试另一种方法
List<string> carriers = _inventoryContext.Items.GroupBy(i => i.Carrier)
.Select(i => i.Key)
.ToList();
关于c# - 使用 Linq to Entities 获取唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10338266/