【问题标题】:LINQ to SQL ToDictionary methodLINQ to SQL ToDictionary 方法
【发布时间】:2010-10-01 21:39:34
【问题描述】:

我有一个结构如下的表:

第 1 列作为 INT,

第 2 列作为 INT,

第 3 列作为 INT,

第 4 列为十进制

我的 LINQ 查询是这样的:

var query = from t in context.Table select t;

我想将查询转换/转换为此 Dictionary 对象:

字典>>

仅使用 LINQ 查询的 ToDictionary 方法。能做到吗?

【问题讨论】:

  • @acermate433s,我不明白 Column1...Column4 与您的 Dictionary<Employee, Dictionary<int, Dictionary<int, decimal>>> 有何关系。请说明您要与字典的哪个部分匹配的列。 Employee 又从何而来?
  • 阅读“Dictionary>>” 本身就是一个brainfsk。你确定要这样做吗?
  • 词典中的词典中的词典...Inception!
  • @Kirk:我已经编辑了我的问题,它应该是一个整数。
  • 基本上我想创建一个查找表。我想使用这个符号 Dictionary[][][].Value 访问这些项目

标签: .net linq dictionary


【解决方案1】:

我相信这会给你想要的:

var result = data
    .GroupBy(x => x.Column1)
    .ToDictionary(x => x.Key, x => x
        .GroupBy(y => y.Column2)
        .ToDictionary(y => y.Key, y => y
            .ToDictionary(z => z.Column3, z => z.Column4)));

虽然我同意 Judah 的观点,即使用它只会产生丑陋的代码。

【讨论】:

    猜你喜欢
    • 2010-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多