こんにちは。beaglesoftの真鍋です。
Ruby on Railsを利用していたときにいろいろと悩ましい思いをしたのが、N+1問題です。
BulletというGemを利用して検出するのですが、多段階になってくるとなかなか対応に苦慮します。
EntityFramework(EF)でもこのN+1問題は起こりえます。もちろんJavaのJPAでも。O/Rマッパーを利用したときにエンティティに関連を持たせるならば避けては通れない問題ですよね。そんなN+1問題のなかでも多段階の結合を行う方法がEFでは簡単に行えました。
関連オブジェクトの読み込み (Entity Framework).aspx)
ちょっと簡単なサンプルを作りたいのですが、時間がないのでリンクだけにします。一言でまとめると、Include("関連.関連の関連")
というように文字列で定義すれば結合してデータを取得してくれます。とても便利ですね。
- 作者: 山田祥寛
- 出版社/メーカー: 秀和システム
- 発売日: 2014/09/22
- メディア: 単行本
- この商品を含むブログ (4件) を見る