C# 使用Linq到实体获取唯一值
我正在使用EF,并且有一个上下文,从中我可以使用_inventoryContext.Items获得项目对象的集合。现在,这些item对象有一个名为Carrier的字符串值。假设items collection中有5个项目,它们具有以下载体值:C# 使用Linq到实体获取唯一值,c#,linq,linq-to-entities,entity-framework-4.1,C#,Linq,Linq To Entities,Entity Framework 4.1,我正在使用EF,并且有一个上下文,从中我可以使用_inventoryContext.Items获得项目对象的集合。现在,这些item对象有一个名为Carrier的字符串值。假设items collection中有5个项目,它们具有以下载体值: "A", "A", "B", "C", "C" 如何使用_inventoryContext.Items获取唯一的载体值 "A", "B", "C" 注意 var carriers = _inventoryContext.Items.Select(i =
"A", "A", "B", "C", "C"
如何使用_inventoryContext.Items获取唯一的载体值
"A", "B", "C"
注意
var carriers = _inventoryContext.Items.Select(i => i.Carrier).Distinct();
不起作用;我得到“不支持方法'Distinct',没有内部异常
我正在使用SQLServer2008Express
Items
是一个,其Carrier
属性是一个字符串。您的示例应该可行,但这里有另一种方法可以尝试
List<string> carriers = _inventoryContext.Items.GroupBy(i => i.Carrier)
.Select(i => i.Key)
.ToList();
List carriers=\u inventoryContext.Items.GroupBy(i=>i.Carrier)
.选择(i=>i.Key)
.ToList();