我有以下代码:
var personIds = from player in myPlayers select player.person_id;
其中personIds
是我要转换为IEnumerable<string>
的{{1}},因为List<ulong>
可通过person_id
转换
这可以在LINQ中轻松完成吗?
答案 0 :(得分:14)
不是转换现有的personIds
,而是在一个查询中执行此操作:
var personIds = myPlayers.Select(player => Convert.ToUInt64(player.person_id))
.ToList();
至少,我会这样做,除非你还需要IEnumerable<string>
来做其他事情,在这种情况下你可以使用Nick的答案。
我还看看你是否可以更改person_id
的类型...如果它始终是ulong
的文本表示,为什么它是一个字符串in第一名?
答案 1 :(得分:4)
你可以这样做:
var personIds = from player in myPlayers select player.person_id;
List<ulong> result = personIds.Select(id => Convert.ToUInt64(id)).ToList();
答案 2 :(得分:1)
var personIds = (from player in myPlayers select Convert.ToUInt64(player.person_id)).ToList();