字典中的ToString c#

Fla*_*nix 1 c# string dictionary

我有一个Dictionary<int, string>c#,我需要一种方法来创建一个字符串,其内容与格式"key1-value1, key2-value2"等.

我是c#的新手,所以我创建了以下功能来实现这个目标:

private string buildString(Dictionary<int, string> info)
{
    string result = "";
    int i = 1;
    foreach (KeyValuePair<int, string> pair in info)
    {
        if (i < info.Count)
        {
            result += pair.Key + "-" + pair.Value + ",";
        }
        else
        {
            result += pair.Key + "-" + pair.Value;
        }
        i++;
    }

    return result;
}
Run Code Online (Sandbox Code Playgroud)

但是,这个功能是有效和冗长的.我知道C#有String.format,但我不确定是否以及如何使用它.

有没有更好的方法以更有效和更简洁的方式实现相同的输出?如果是这样的话?

Sel*_*enç 13

string.Format是格式化strings,你有值,你想连接它们.

你可以string.Join像这样使用:

var result = string.Join(", ", info.Select(kvp => string.Join("-", kvp.Key, kvp.Value)));
Run Code Online (Sandbox Code Playgroud)