3

我正在使用 WCF 服务器(使用新的 beta Mindscape LightSpeed ORM)开发一个应用程序,并在 ASP.NET MVC2 客户端上使用该服务。我的实体在客户端显示为T, 或的数组IEnumerable<T>。我想在数据到达后对数据做一些很酷的事情,但需要 LINQ 语法IQueryable<T>

我知道有一种方法可以从IEnumerable<T>to转换IQueryable<T>,但到目前为止我还没有找到它。有人可以帮忙吗?

谢谢,戴夫

4

2 回答 2

6

好吧,我怀疑您正在考虑Queryable.AsQueryable()- 但是是什么让您认为您需要IQueryable<T>使用 LINQ 来使用?将 转换IEnumerable<T>IQueryable<T>不会给您带来 . 的大部分好处IQueryable<T>

LINQ to Objects 完全基于IEnumerable<T>. 如果您对已收到的数据感到满意,这就是您所需要的。

但是,如果您想在客户端表达一个查询并告诉 WCF 服务器执行该查询(例如,在数据库中或至少在 WCF 端执行过滤),那么您应该使用IQueryable<T>. 你可能会发现我关于 Edulinq 的帖子IQueryable<T>很有用。您需要某种方式将服务表示为IQueryable<T>虽然 - 那时您超出了我的 WCF 知识范围。

于 2011-03-03T15:57:29.100 回答
0

尝试以下方法: AsQueryable()

于 2011-03-03T15:57:15.200 回答