Извините за смутный заголовок, но я не уверен, что мне следует использовать.У меня есть запрос, похожий на этот (переработанный для экономии места):
SELECT
*
FROM
Publishers p
INNER JOIN Authors a
ON p.AuthorID = a.AuthorID
INNER JOIN Books b
ON a.BookID = b.BookID
WHERE
p.PublisherName = 'Foo'
ORDER BY
b.PublicationDate DESC
Я попытался переписать его так:
var query =
from publisher in ctx.Publishers
from author in publisher.Authors
from books in author.Books
...
, но получил следующую ошибку:
Error 1 An expression of type 'Models.Books' is not allowed in a
subsequent from clause in a query expression with source type
'System.Linq.IQueryable<AnonymousType#1>'. Type inference failed in the
call to 'SelectMany'.
Я могу переписать LINQ, чтобы он заработал, просто присоединив таблицы, как в SQL, но я думал, что смогу добиться того, чего хочу от их отношений - яПросто немного запутался, почему я могу получить издателя. Авторы, но не авторы. Книги.