0

在此代码中尝试按名称获取进程我如何添加第二个过滤器来查询

      IEnumerable<Process> processList =

                from p in Process.GetProcesses()
                where p.ProcessName.StartsWith("Mon") || p.ProcessName.StartsWith("Tue")
                select p;

这是我尝试纠正的,上面的例子 dows 工作

4

3 回答 3

1
IEnumerable<Process> processList = from p in Process.GetProcesses()
                where p.ProcessName.StartsWith("Mon") && p.Property == somethingElse && ...
                select p;

只需添加 && 如果你想要 AND 条件或 || 如果你想要 OR 条件。

OP评论后编辑:

如果要访问 IEnumerable 的元素:

var element1 = processList.ElementAt(0);

如果要遍历所有元素,可以使用 foreach。

     foreach (var i in processList)
    {
    Response.Write(i.ProcessName);
    //or if you're using a console application: Console.WriteLine(i.ProcessName);
    }
于 2012-09-02T16:49:50.393 回答
1
IEnumerable<Process> processList =
    from p in Process.GetProcesses()
    where p.ProcessName.StartsWith("Mon")
    where p.ProcessName.EndsWith("day")
    select p;
于 2012-09-02T16:50:28.447 回答
0

我的答案是在 OP 更正问题以演示扩展方法之后

IEnumerable<Process> processes = 
Process.GetProcesses()
.Where(p => p.ProcessName.StartsWith("Mon") || p.ProcessName.EndsWith("Tue"));
于 2012-09-02T17:04:57.980 回答