1

似乎找不到在线搜索此内容的好方法。我正在尝试从数据库中获取所有父记录(汽车),并且我想在原始查询中或在第一个查询之后立即运行的单独查询中仅包含 1 个单个子项(图像),以便获得完整的结果回到单个结果集中。

我有一个带有 CAR 表和 IMAGES 表的数据库。我想在屏幕上显示所有汽车,但只显示它们的第一张图像作为缩略图。如果需要,我愿意在单独的查询中执行此操作,但我希望 CAR.IMAGES.SingleOrDefault() 最终保存图像记录,因此我不会将 10 张图像传递到我的网站并且必须处理开销。

谢谢。

4

2 回答 2

2

您可以使用如下查询:

var cars = from car in context.Cars
           select {Name = car.Name, FirstImage = car.Images.FirstOrDefault()}

通过这种方式,您只有汽车对象中的第一个图像,因此它是您想要的轻量级。

于 2013-06-10T20:52:56.453 回答
1

您可以尝试直接方法

var result = context.Cars.Select(_=> new {Car = _, Image = _.Images.FirstOrDefault()});
于 2013-06-10T20:50:57.953 回答