为什么我的 IEnumerator<AppiumWebElement> 没有 .Where()?

Why does my IEnumerator<AppiumWebElement> not have .Where()?

标题主要解释了我的问题,我的 IEnumerable<AppiumWebElement> 没有 .Where 方法,我希望了解原因。

我有一个方法return是一个IEnumerable<AppiumWebElement>,如下:

public IEnumerable<AppiumWebElement> GetLayers()
{
  var items = PaneOrView.FindElementsByClassName("TreeViewItem");
  List<AppiumWebElement> layers = new List<AppiumWebElement>();
  foreach(AppiumWebElement item in items)
  {
    string automationId = item.AutomationId(); 
    if (automationId != null && automationId.Contains("Layer"))
    {
      layers.Add(item);
    }
  }
  return layers.AsEnumerable();
}

当我检查此方法中的 return 项上是否存在 .Where 时(使用代码完成),我得到了我希望从 [=17 中看到的方法的完整列表=].

但是,当我稍后从另一个名称空间使用此方法时,例如:

var test = Contents.GetLayers();

test 中的结果不包含 .Where 或我希望从 IEnumerable 中看到的任何其他方法。知道为什么吗?

感谢指点!

Where()Linq 中的其他方法是您正在使用的扩展方法。您需要导入 System.Linq:

using System.Linq;