简体   繁体   English

使用Entity Framework 6从数据库查询中检索列表

[英]Retrieving a list from a database query with Entity Framework 6

I want to return a list with entity framework 我想使用实体框架返回列表

using (FinalDatabaseEntities fdb = new FinalDatabaseEntities())
{
    var result = from Port in fdb.Ports select Port.Name;
    result = result.ToList();
}

I wish to return a list or array (list preferably) and place it in my result variable 我希望返回一个列表或数组(最好是列表)并将其放在我的result变量中

I'm getting the following error 我收到以下错误

Error CS0266 Cannot implicitly convert type 'System.Collections.Generic.List' to 'System.Linq.IQueryable'. 错误CS0266无法将类型“ System.Collections.Generic.List”隐式转换为“ System.Linq.IQueryable”。 An explicit conversion exists (are you missing a cast?) Finally!! 存在显式转换(您是否缺少演员表?)最后! C:\\Users\\Kudzai Mhlanga\\source\\repos\\Finally!!\\Program.cs 22 Active C:\\ Users \\ Kudzai Mhlanga \\ source \\ repos \\ Finally !! \\ Program.cs 22有效

You just need a second local variable, which also makes your code more readable, since the first line creates a "query" not a "result". 您只需要第二个局部变量,这也使您的代码更具可读性,因为第一行创建的是“查询”而不是“结果”。 So: 所以:

using (FinalDatabaseEntities fdb = new FinalDatabaseEntities())
{
    var query = from Port in fdb.Ports select Port.Name;
    var result = query.ToList();
}

Your Code will be : 您的代码将是:

using (FinalDatabaseEntities fdb = new FinalDatabaseEntities())
{
     var result = (from port in fdb.Ports  select port.Name).ToList();                      
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM