0

私は n 層エンタープライズ開発に不慣れです。読んだだけで「すでに答えがあるかもしれない質問」を投げたかなりのチュートリアルを手に入れましたが、探していたものが見つかりませんでした。私は、ボートで最初にやってきた男から始まる系図サイトをやっています。彼の名前をクリックすると、グリッドに彼のすべての子供が表示されます。次に、子供がいる彼の子供の 1 人をクリックすると、グリッドが取得されます。彼の子供たちなどが住んでいます。各レコードには ID と ParentID があります。特定の人を選択すると、ID が保存され、すべての子供を返す ParentID に一致するすべてのレコードの検索に使用されます。データは (少なくともユーザーによって) 変更されることはないので、データベース アクセスを 1 回だけ行い、すべてのフィールドを 1 つのデータ テーブルに入力し、毎回再クエリを実行してレコードを表示します。DAL では、すべてのレコードを List に入れます。ObjectDataSource では、GridView を埋める関数がすべてのエントリの List を返すだけです。私がやりたいことは、データテーブルを再クエリし、リストを新しいクエリで埋めて、GridView に表示することです。私のコードは3つのファイルにありますここ

(このウィンドウに自分のコードを表示するためのバッククォートを取得できません) 必要なのは、既存の DataTable に対して新しいクエリを作成し、それを新しい DataTable にコピーする方法を理解することだけです。これで十分に説明できることを願っています。[編集: 毎回データベースから新しいクエリを実行する方が簡単であり、メモリに保存するためのリソースの消費量が少なくなります (将来、データベースが大きくなりすぎた場合)。しかし、できるかどうか知りたいだけです。このようにしてください-つまり、テーブル全体の1つのコピーから作業します]任意のアイデア...

4

1 に答える 1

0

データは本質的にツリー構造を表しています。それを表示するグリッドは私の最初の選択ではないかもしれません...

1つのクエリですべてのデータをクエリするには、複雑なSPを使用します。

しかし、あなたはすでにパフォーマンスを検討しています。デザインを考え出すとき、それは常に心に留めておくべき良いことです。しかし、何かを作成し、それを改善してから、最適化を開始する方がよいようです。

リレーショナルデータベースは階層データにはあまり適していませんので、nosql(グラフ)データベースを検討してください。あなたが言ったように、DBへの書き込みはほとんどありません、nosqlはここで輝いています。

于 2013-01-14T03:31:25.463 に答える