Ale*_*lex 10 .net c# linq entity-framework list
我需要从带有Entity Framework的C#.NET中的大表中提取一对'ID'/'Name'的列表.
我试试这个请求:
List<Tuple<int, string>> list = (from res in db.Resource
select new Tuple<int, string>(res.Resource_ID, res.Name)).ToList();
Run Code Online (Sandbox Code Playgroud)
但不幸的是我有这个错误:
LINQ to Entities中仅支持无参数构造函数和初始值设定项.
我不知道如何用这个框架提取这个元组列表,我觉得这个错误有点丢失.你能帮我理解和解决我的问题吗?
最好的祝福,
亚历克斯
Pat*_*iek 15
您可以通过选择匿名类型来执行中间步骤:
db.Resource.Select(x => new { x.Resource_ID, x.Name }).AsEnumerable().Select(x => Tuple.Create(x.Resource_ID, x.Name)).ToList();
Run Code Online (Sandbox Code Playgroud)
在Linq To Entities中创建元组不是受支持的操作,因此您必须选择一个匿名类型,它类似于:
SELECT [Resource].[Resource_ID], [Resource].[Name]
Run Code Online (Sandbox Code Playgroud)
然后转到LINQ to Objects by AsEnumerable
并获取你的元组.