代码之家  ›  专栏  ›  技术社区  ›  Bless Yahu

微软会让所有的收藏都能被LINQ使用吗?

  •  9
  • Bless Yahu  · 技术社区  · 16 年前

    我使用LINQ已经有一段时间了(并且很喜欢),但是当我遇到.NET专门的集合(DataRowCollection,ControlCollection)时,感觉就像遇到了减速带。有没有一种方法可以将LINQ与这些专用控件结合使用,如果没有,您认为微软会在下一版本的框架中解决这个问题?或者让我们以非LINQ的方式迭代这些项目,或者自己将项目从集合中拉到可LINQ的集合中?

    3 回复  |  直到 16 年前
        1
  •  22
  •   JaredPar    16 年前

    收藏之所以喜欢 ControlCollection Cast 方法创建强类型枚举,因此可以与LINQ一起使用。例如

    ControlCollection col = ...
    var query = col.Cast<Control>().Where(x => ...);
    

    微软会实现这些吗 IEnumerable<T> IEnumerable<Control> 对于 控件集合

        2
  •  4
  •   BFree    16 年前

    myDataRowCollection.Cast<DataRow>().Where.....
    

    这样使用Linq。如果您知道集合中的对象是什么,那么您应该能够使用它。

        3
  •  1
  •   Asad    16 年前

    原因是:不实现 IEnumerable<T> 或IQueryable,不能在LINQ中迭代

    推荐文章