我希望找到一种更好的方法(也许有一个很好的 linq 表达式)将像“41,42x,43”这样的字符串列表转换为有效的 long 列表。下面的代码有效,但感觉很难看。
string addressBookEntryIds = "41,42x,43";
var ids = addressBookEntryIds.Split(new[] {',', ';'}, StringSplitOptions.RemoveEmptyEntries);
var addressBookEntryIdList =new List<long>();
foreach (var rec in ids)
{
long val;
if (Int64.TryParse(rec, out val))
{
addressBookEntryIdList.Add(val);
}
}