我需要从嵌套字典 IN C#中获取数据。我的词典是这样的:
static Dictionary<string, Dictionary<ulong, string>> allOffset =
new Dictionary<string, Dictionary<ulong, string>>();
我需要获取完整字典的所有键/值,如下所示:
string->>ulong, string
提前致谢。
答案 0 :(得分:2)
您可以使用LINQ来执行此操作:
var flatKeysAndValues =
from outer in allOffset // Iterates over the outer dictionary
from inner in outer.Value // Iterates over each inner dictionary
select new
{
NewKey = outer.Key + "->>" + inner.Key,
NewValue = inner.Value
};
使用示例:
foreach (var flatKeysAndValue in flatKeysAndValues)
{
Console.WriteLine("NewKey: {0} | NewValue: {1}",
flatKeysAndValue.NewKey, flatKeysAndValue.NewValue);
}
答案 1 :(得分:1)
我不确定您是想将数据写入控制台,还是想将其转换为新的对象结构。
但是如果您只想打印,请尝试一下:
foreach( var pair in allOffset )
{
foreach( var innerPair in pair.Value )
{
Console.WriteLine("{0}->>{1},{2}", pair.Key, innerPair.Key, innerPair.Value);
}
}