如何在 LINQ 中编写此函数?
public List<TResult> select(List<string> source)
{
List<TResult> result = new List<TResult>();
foreach (var a in source)
{
try { result.Add(TResult.Parse(a)); }
catch { }
}
return result;
}
我只想选择可转换为 TResult 的项目。 TResult.Parse() 返回 TResult 的新实例。
最佳答案
您不仅可以将 lambda 表达式传递给 LINQ 方法,还可以将语句传递给 LINQ 方法:
var results = source.Select(item =>
{
try
{
return TResult.Parse(item);
}
catch
{ return null; }
}).Where(result => result != null).ToList();
关于c# - 如何使用 LINQ 选择*某些*项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5511603/