这位用户已经在几分钟之前提出了正确的重复sql and linq query
PhotoAlbums
表
ALBUMID
标题
日期
Photos
表:
PHOTOID
标题
日期
ALBUMID
SELECT AlbumID, Title, Date,
(SELECT TOP (1) PhotoID
FROM Photos AS c
WHERE (AlbumID = a.AlbumID)) AS PhotoID
FROM PhotoAlbums AS a
我需要用LINQ-to-SQL编写的这个查询。提前致谢
答案 0 :(得分:3)
你可以这样做:
var result =
yourContext.PhotoAlbums.Select(a =>
new {a.AlbumId, a.Title, a.Date, a.Photos.First().PhotoId }
);
另外,LinqPad是一个非常好的工具,可以帮助你做到这一点。
答案 1 :(得分:2)
假设您在DBML文件中定义了PhotoAlbums
和Photos
之间的关系,您可以这样做:
var albums = dataContext.PhotoAlbums.Select(album => new {
AlbumId = album.AlbumId,
Title = album.Title
Date = album.Date,
PhotoId = album.Photos.Select(photo => photo.PhotoId).FirstOrDefault()
});