对于拥有IEnumerable<Entityclass>
和string
成员的实体,我有一个int
。 我需要将其转换为KeyValuePair<string, double>
数组,反之亦然。
失败并出现施法错误。
[DataContract]
public class Entityclass
{
[DataMember]
public string text{ get; set; }
[DataMember]
public int textcount{ get; set; }
}
我有IEnumerable<Entityclass>
如何将IEnumerable<Entityclass>
转换为KeyvaluePair<string,
double>[]
数组?
如何将KeyvaluePair<string, double>[]
数组转换为KeyvaluePair<string, int>[]
数组?
如何将KeyvaluePair<string, double>
转换回IEnumerable?
我试过了:
topics is IEnumerable<Entityclass>;
topics.Cast<KeyValuePair<string, double>>().ToArray();
因投射错误而失败答案 0 :(得分:18)
您需要将每个主题投射到KeyValuePair
。 Linq Select
扩展方法可以做到:
topics
.Select(x=> new KeyValuePair<string, double>(x.text, x.textcount))
.ToArray();