LINQ - 将两个实体加入一个 IQueryable 复杂类型 - EF4 和 ASP.Net MVC

发布于 2024-09-07 21:13:06 字数 249 浏览 2 评论 0原文

我有这样的代码:

 var entityX = this._xService.GetAll();
 var entityY = this._yService.GetAll();

两者都作为 IEnumerable 类型返回。我需要将两者内部连接成一个类似 JoinedList 类的东西,该类必须是 IQueryable 的。

我正在寻找使用 LINQ 来做到这一点的方法。

非常感谢

I have code like:

 var entityX = this._xService.GetAll();
 var entityY = this._yService.GetAll();

Both are returned as IEnumerable types. I need to inner join the two into a something like a JoinedList class that has to be IQueryable.

I'm looking for ways to do this please using LINQ.

Many Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

巷雨优美回忆 2024-09-14 21:13:06

LINQ to Objects 是极好的粘合剂:

var entityX = this._xService.GetAll();
var entityY = this._yService.GetAll();
var joinedSequence = from x in entityX
                     join y in entityY on x.Key equals y.Key
                     select new { x, y };
var joinedQueryable = joinedSequence.AsQueryable();

您不应该真正需要最后一步; IQueryable 是不必要的,因为 LINQ to Objects 与 IEnumerable 配合得很好。

LINQ to Objects is excellent glue:

var entityX = this._xService.GetAll();
var entityY = this._yService.GetAll();
var joinedSequence = from x in entityX
                     join y in entityY on x.Key equals y.Key
                     select new { x, y };
var joinedQueryable = joinedSequence.AsQueryable();

You shouldn't really need that last step; IQueryable<T> is unnecessary because LINQ to Objects works just fine with IEnumerable<T>.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文