将逗号分隔值转换为字典

Fre*_*wal 1 c# linq asp.net

我正在尝试将逗号分隔的字符串转换为字典

string text = "abc,xyz,pqr";
Run Code Online (Sandbox Code Playgroud)

输出应该是Dictionary<string, uint>key作为字符串从text和value作为从0开始的数字.

我在下面试过,但它给出了错误:

text.Split(new[] {','}, StringSplitOptions.RemoveEmptyEntries).ToDictionary(split => split[0], 0))`
Run Code Online (Sandbox Code Playgroud)

我也不确定如何给出增量值所以我尝试使用字典中所有键的常量硬编码值,如上所示,但它也给出了错误.

所有键的常量值或使用linq的增量值的任何帮助都非常有用!!

Cor*_*son 7

有重载Select()传递索引:

var dict = text.Split(new[] {','}, StringSplitOptions.RemoveEmptyEntries)
    .Select((str, idx) => new { str, idx })
    .ToDictionary(x => x.str, x => x.idx);
Run Code Online (Sandbox Code Playgroud)