1

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();              
        }
    }
4

1 に答える 1