DB から 3 つの請求書を持つ 1 つのクライアントのみを取得したいと考えています。以下に示すコードでは、3 つの結果が得られません (ただし、例外がスローされます)。
例外: インクルード パス式は、型で定義されたナビゲーション プロパティを参照する必要があります。参照ナビゲーション プロパティにはドット パスを使用し、コレクション ナビゲーション プロパティには Select 演算子を使用します。パラメータ名: パス
複数の Invoices を持つことができる 1 つの Client と、複数の InvoiceLines を持つことができる 1 つの Invoice があります。
3 つの請求書と関連する InvoiceLines を持つ 1 つのクライアントを取得したいと考えています。
ここで何が間違っていましたか?
public async Task<Client> Client(int id)
{
using (var db = GetContext())
{
return await db.Client.Include(x => x.Invoices.Take(3))
.Where(i => !i.IsDeleted)
.Include(c => c.Invoices.Select(x => x.InvoiceLines))
.Where(x => x.Id == id)
.FirstOrDefaultAsync();
}
}