タンパク質配列の大規模なデータベースにさまざまなビューを表示する ASP.NET アプリケーションがあります。訪問者がデータを参照するときに、GridView 行の CheckBox を選択して、後で圧縮されたテキスト ファイルとしてダウンロードするシーケンスにフラグを設定できるようにしたいと考えています。選択を保存したくないので、セッションで有効でなければなりません。
今の私の考えは、GridView に TemplateField を追加し、それに CheckBox を追加することです。チェック イベントを処理し、シーケンス ID をセッション状態に保存するつもりです。ユーザーがダウンロード ページに移動すると、セッション データが取得され、ダウンロードしようとしているシーケンスのリストが表示され、ファイルが送信されます。明らかに、フォームの読み込み/ページの切り替えごとにセッション データを再解析する必要もあります。
だから私は実際にこれについていくつかの質問があります:
1) 私は働きすぎていませんか? これを実装する簡単な方法はありますか?
2) セッション状態のサーバーへのすべてのラウンドトリップは、パフォーマンスの問題になる可能性がありますか? ページに「ダウンロード用に保存」ボタンを配置して、バッチ処理して役立つようにすることができます。チェック イベントの処理は、別の場所に移動した場合に誤って状態を失うことがないため、よりエラー トレラントに見えます。
3) チェック ボックスの列で GridView を並べ替えることができますか? 最初にチェック ボックスの列で並べ替え、次に現在並べ替えられている列で並べ替えたいと思います (たとえば、GridView が姓で並べ替えられている場合は、チェック列で並べ替え、次に姓で並べ替えます)。
重要な場合、私は C#、.NET 3.5、VS2008 を使用しており、SQLServerExpress テーブルから GridView を作成する単純なドラッグ アンド ドロップの方法を使用しています。