var details= from row in databaseTablewhere row.id equals queryIdselect new {Dict = row.ToDictionary(x = x.Name, x = x.Value),};执行此LINQ to SQL时,我得到错误;System.NotSupportedException: Thequery ...
var details= from row in databaseTable
where row.id equals queryId
select new
{
Dict = row.ToDictionary(x => x.Name, x => x.Value),
};
执行此LINQ to SQL时,我得到错误;
System.NotSupportedException: The
query operator ‘ToDictionary’ is not
supported.
我需要做的是先将行拉入内存,但我不确定如何.我尝试在各个地方调用ToList,但没有运气.
解决方法:
var fixTotaliserDetails = (from row in databaseTable
where row.id == queryId
select new
{
row.Name,
row.Value,
})
.ToDictionary(x=>x.Name, x=>x.Value);
这会奏效.我认为你可能过度简化了你的答案,因为在linq-to-sql中,表中的项目没有实现IEnumerable< T>
沃梦达教程
本文标题为:c# – LINQ to SQL – 不支持ToDictionary – 如何将结果提取到内存中?
基础教程推荐
猜你喜欢
- Unity实现多平台二维码扫描 2023-01-27
- Unity UI拖拽模型选择功能 2023-02-06
- c# – 如何在Windows Phone 8.1上使用Zxing创建QR码图像 2023-09-18
- c# 几个常见的TAP异步操作 2023-04-10
- C#微信公众号开发之使用MessageHandler简化消息处理流程 2023-06-15
- C#实现Json转DataTable并导出Excel的方法示例 2023-01-11
- 浅谈C# 构造方法(函数) 2023-03-03
- C#使用Lazy<T>实现对客户订单的延迟加载 2023-07-04
- C# 读取ttf字体文件里的Unicode实现 2023-03-10
- C#中IEnumerable接口介绍并实现自定义集合 2023-05-31