matsutoba’s blog

フロントエンドエンジニアをしています

EntityFrameworkでincludeしているのにデータが取れない

EntityFramework を使ってデータベースからデータを取得するとき、Includeを使えば、子要素もいっしょにとって来られるはずなのに、どうしてもnullになってしまいました。

var query = _context.Customers
    .Include(c => c.Reservations)
    .Where(e => e.CustomerId == id);

using Microsoft.EntityFrameworkCore が必要

Includeを書いたとき、Include の定義が見つからず、using する要素の提案が出てくるのですが、間違えて System.Data.Entity を使っていたのが原因でした。

Microsoft.EntityFrameworkCore を使うようにしたら正しく動きました。

EntityFrameworkの範囲で Include が使いたいので、当たり前といえば当たり前なのですが・・・。これに気づくのに30分ぐらいかかってしまった・・・。