我已经看到,如果我想使用 sqlite-net 进行 linq 查询,如果我这样做:
var query = conn.Table<TableName1>().Where(x => x.Field=="Val1");
我可以将 where 应用于选择; 是否可以对多个表执行类似操作,在 TableName1 和 TableName2 之间应用连接?如果可能,linq 查询的正确语法是什么?
使用查询:
var query = string.Format (
@"
SELECT artist.Name as ArtistName, album.Id as AlbumId, album.Title as AlbumTitle,
track.Id as TrackId, track.Name as TrackName, track.Number as TrackNumber
FROM Track track
LEFT OUTER JOIN Album album
ON track.AlbumId = album.Id
LEFT OUTER JOIN Artist artist
ON album.ArtistId = artist.Id
WHERE track.Id = '{0}'
"
,trackId.ToString ());
var trackViewModels = await QueryAsync<TrackViewModel> (query);
return trackViewModels.FirstOrDefault();