无法在LINQ中强制转换'WhereSelectListIterator`类型的对象

iam*_*mCR 4 .net linq vb.net list backgroundworker

我有BackgroundWorkerCollection,它是特定类的列表.当我尝试循环进入列表并过滤并选择单个我得到提到的错误.

//码

Dim bw = From BackgroundWorkerLinq In BackgroundWorkerCollection Where BackgroundWorkerLinq.Id = sItemNo Select BackgroundWorkerLinq.Backgroundworker
Run Code Online (Sandbox Code Playgroud)

是否可以转换bwBackgroundworker,在应用程序中创建的类有两个属性Id(int)和Backgroundworker(Backgroundworker).所以我必须转换回相同以检查是否繁忙.

哪里我错了,怎么做到这一点?

Jon*_*eet 7

bw将是一个序列BackgroundWorker项目-所以你不能从序列转换为单个项目.有许多方法可以为您提供单个项目,例如

  • First
  • FirstOrDefault
  • Single
  • SingleOrDefault
  • Last
  • LastOrDefault

您应该弄清楚是否应该使用其中一个,或者实际迭代查询的所有结果.