撰写字符串列表的不可变F#映射

Rex*_*NFX 3 c# f# dictionary idiomatic map

在C#中我可以构建一个Dictionary<string, List<string>>非常简单的.如果我正在阅读大型项目数据库,我可以执行以下操作:

var dict = new Dictionary<string, List<string>>();
foreach(string[] row in data)
   if (!dict.ContainsKey(row[0]))
      dict.add(row[0], new List<string>() { row };
   else
      dict[row[0]].add(row);
Run Code Online (Sandbox Code Playgroud)

现在的问题是,如何在f#中使用不可变的方法执行此操作Map<string, string list>

Dan*_*iel 10

data
|> Seq.groupBy (fun row -> row.[0])
|> Map.ofSeq
Run Code Online (Sandbox Code Playgroud)