听起来很琐碎,但我找不到一个优雅的答案:例如,如何在Entity Framework上下文中使用LINQ将特定列的所有行读入字符串列表?
听起来很琐碎,但我找不到一个优雅的答案:例如,如何在Entity Framework上下文中使用LINQ将特定列的所有行读入字符串列表?
你可以尝试以下简单的方法:
var rows = dbContext.TableName.Select(x=>x.ColumName);
在这里,dbContext
是你用来与数据库通信的类,TableName
是你想要读取列值的表的名称,而 ColumnName
则是列的名称。
此外,如果在 Select
后面加上 ToList
,你将创建一个对象列表,其类型将是名为 ColumnName
的列中值的类型。
Christos的答案只会给你一个IQueryable。如果你想要一个实际的List,你需要对IQueryable进行操作:
var rows = dbContext.TableName.Select(x=>x.ColumName).ToList();
虽然我可能会选择使用LINQ语法:
var rows = (from c in dbContext.TableName
select c.ColumnName).ToList();
var rows = from t in dbContext.TableName select t.ColumnName;
。 - Alaa Masoud