我需要在程序中创建一个非常长的字符串,并且一直在使用String.Format.我遇到的问题是当你有超过8-10个参数时跟踪所有数字.
是否有可能创建某种形式的重载,接受类似于此的语法?
String.Format("You are {age} years old and your last name is {name} ",
{age = "18", name = "Foo"});
Run Code Online (Sandbox Code Playgroud) 而不是使用{0} {1},等我想要使用{title}.然后以某种方式填充该数据(下面我使用了a Dictionary).此代码无效并引发异常.我想知道我是否能做类似于我想要的事情.使用{0 .. N}不是问题.我只是好奇而已.
Dictionary<string, string> d = new Dictionary<string, string>();
d["a"] = "he";
d["ba"] = "llo";
d["lol"] = "world";
string a = string.Format("{a}{ba}{lol}", d);
Run Code Online (Sandbox Code Playgroud)