我有这个功能:
public IEnumerableEnumPrograms() { return dev.AudioSessionManager2.Sessions.AsEnumerable() .Where(s => s.GetProcessID != 0) .Select(s => { try { return Process.GetProcessById((int)s.GetProcessID).ProcessName; } catch (ArgumentException) { return null; } }); }
try..catch是必要的,因为可能存在具有不再存在的PID的会话.我想跳过它们.有没有办法从Select
回调中执行此操作,还是需要添加Where
跳过null
值的新条件?