私は、SQL Serverで標準的な "EntityID、ParentID"というアプローチを使ってモデル化された、大きな階層データセットを扱っています。ツリー全体には約25,000のノードがあります。エンティティフレームワークを階層データで使用するにはどうすればよいですか?
私はしばしば、ツリーのサブツリーにアクセスし、サブツリーのノードからハングする関連データにアクセスする必要があります。私は、サブツリーのルートノードを与えられた任意のサブツリーをフェッチするために再帰クエリを使用して、テーブル値関数に基づいて数年前にデータアクセスレイヤーを構築しました。
私はEntity Frameworkを使用することを考えていますが、 のような階層データをどのようにクエリするのか分かりません。 AFAIK Linqでは再帰的なクエリはありません。エンティティデータモデルでTVFを公開することはできません。
ストアドプロシージャを使用する唯一のソリューションはありますか?他の誰かがこれを解決しましたか?
説明:ツリー内の25,000ノード階層化されたデータセットのサイズを指しています。オブジェクトまたはEntity Frameworkとは関係ありません。
リンクは残念ながら今死んでいます – Oskar
@Oskar:このページは著者のサイトで利用できるようになりました。リンクを更新しました。 –