如何将实体框架查询结果放入List中

maj*_*jor 3 c# entity-framework c#-4.0

如何将以下查询结果放入List中

var  result = from c in sb.Swithches_SW_PanalComponents
                     select new { c.ID,c.SW_PanalComponents.ComponentsName,c.ComponentValue };
Run Code Online (Sandbox Code Playgroud)

Ada*_*kis 6

最终编辑

根据您的上一条评论,这就是您所需要的一切

List<Swithches_SW_PanalComponents> result = 
                                  sb.Swithches_SW_PanalComponents.ToList();
Run Code Online (Sandbox Code Playgroud)

这当然是相同的

var result = sb.Swithches_SW_PanalComponents.ToList();
Run Code Online (Sandbox Code Playgroud)

编辑

根据您的意见,我认为这是您想要的:

List<SW_PanalComponents> result = sb.Swithches_SW_PanalComponents
                  .Select(c => new SW_PanalComponents { /* initialize your fields */ })
                  .ToList();
Run Code Online (Sandbox Code Playgroud)

结束编辑

这个ToList方法就是你想要的.但考虑使用点符号.对于像这样的简单查询,它更干净,更整洁.

var result = sb.Swithches_SW_PanalComponents
                  .Select(c => new { c.ID, c.SW_PanalComponents.ComponentsName, c.ComponentValue })
                  .ToList();
Run Code Online (Sandbox Code Playgroud)

另请注意,如果您只是尝试立即执行查询,只需要枚举它,您也可以调用 AsEnumerable()

var result = sb.Swithches_SW_PanalComponents
                  .Select(c => new { c.ID, c.SW_PanalComponents.ComponentsName, c.ComponentValue })
                  .AsEnumerable();
Run Code Online (Sandbox Code Playgroud)

这里的优点是结果是一种不太具体的类型IEnumerablt<T>.


Ica*_*rus 5

像这样:

var  result =(from c in sb.Swithches_SW_PanalComponents
                     select new 
                     { c.ID,
                       c.SW_PanalComponents.ComponentsName,
                       c.ComponentValue 
                     }).ToList();
Run Code Online (Sandbox Code Playgroud)