在KeyValuePair<T1, T2>和之间是否有内置的转换或转换Tuple<T1, T2>?
我知道这将是一个简单的扩展方法:
public static KeyValuePair<T1, T2> ToPair<T1, T2>(this Tuple<T1, T2> source)
{
return new KeyValuePair<T1, T2>(source.Item1, source.Item2);
}
public static Tuple<T1, T2> ToTuple<T1, T2>(this KeyValuePair<T1, T2> source)
{
return Tuple.Create(source.Key, source.Value);
}
Run Code Online (Sandbox Code Playgroud)
但是因为对象可以用于类似的目的(特别是因为KeyValuePair<>它经常被用来代替2元素,Tuple<>直到它添加到C#4.0),我想知道这样的转换器是否已经内置到框架中了?
我问的原因是我正在使用一个较旧的库(针对.NET 3.5),该库KeyValuePair<>在很多地方都使用了元组可能更合适,我想Tuple<>在新代码中使用.所以我想弄清楚我是否可以将kvp这些方法的返回值转换或转换为Tuple或者如果我需要定义自己的转换(或更改旧代码).
| 归档时间: |
|
| 查看次数: |
1085 次 |
| 最近记录: |