你几乎拥有它,但最简单的方法就是将它分成两个初始化。
首先,初始化KeyValuePair<string, string>
,然后使用与int
一起initalise的KeyValuePair<KeyValuePair<string, string>, int>
:
var pair = new KeyValuePair<string, string>("string 1", "string 2");
var varName = new KeyValuePair<KeyValuePair<string, string>, int>(pair, 10);
,如果你写一个辅助方法,像这样可以大大简化这一点:
public static KeyValuePair<T1, T2> MakeKeyValuePair<T1, T2>(T1 key, T2 value)
{
return new KeyValuePair<T1, T2>(key, value);
}
使用它,您可以改为:
var pair = MakeKeyValuePair("string 1", "string 2");
var varName = MakeKeyValuePair(pair, 10);
这更容易遵循,而且您不需要明确指定类型。
或者如果你喜欢(我个人不喜欢这个):
var varName = MakeKeyValuePair(MakeKeyValuePair("string 1", "string 2"), 10);
但如果你真的想这样做艰难地:
var varName = new KeyValuePair<KeyValuePair<string, string>, int>(
new KeyValuePair<string, string>("string 1", "string 2"),
10);
多德的语言..什么码你已经试过..如果你可以告诉会更好,我认为... – Manish
对不起,认为这是很清楚。我的不好,这是C# –