Reputation: 9574
THIS USER HAS ALREADY ASKED THE EXACT DUPLICATE A FEW MINUTES AGO sql and linq query
PhotoAlbums
table
AlbumID
Title
Date
Photos
table:
PhotoID
Title
Date
AlbumID
SELECT AlbumID, Title, Date,
(SELECT TOP (1) PhotoID
FROM Photos AS c
WHERE (AlbumID = a.AlbumID)) AS PhotoID
FROM PhotoAlbums AS a
I need this query written in LINQ-to-SQL. Thanks in advance
Upvotes: 0
Views: 155
Reputation: 120997
You can do it like this:
var result =
yourContext.PhotoAlbums.Select(a =>
new {a.AlbumId, a.Title, a.Date, a.Photos.First().PhotoId }
);
Also, LinqPad is a very nice tool, that can help you do this.
Upvotes: 3
Reputation: 838796
Assuming that you have defined a relationship between PhotoAlbums
and Photos
in your DBML file, you can do this:
var albums = dataContext.PhotoAlbums.Select(album => new {
AlbumId = album.AlbumId,
Title = album.Title
Date = album.Date,
PhotoId = album.Photos.Select(photo => photo.PhotoId).FirstOrDefault()
});
Upvotes: 2