听起来微不足道,但我找不到一个优雅的答案:如何使用实体框架上下文中的LINQ将特定列的所有行读入字符串列表?
答案 0 :(得分:10)
您可以尝试以下简单的操作:
var rows = dbContext.TableName.Select(x=>x.ColumName);
其中dbContext
是您使用的课程" talk"对于您的数据库,TableName
是表的名称,您希望读取其列值,ColumnName
是列的名称。
此外,如果在ToList
之后放置Select
,您将创建对象列表,其类型将是名为ColumnName
的列中值的类型。
答案 1 :(得分:5)
克里斯托斯的回答只会给你一个智慧。如果你想要一个真正的List,你需要对IQueryable做一些事情:
var rows = dbContext.TableName.Select(x=>x.ColumName).ToList();
虽然我可能会使用LINQ语法:
var rows = (from c in dbContext.TableName
select c.ColumnName).ToList();
这两种形式是等效的。