2009-08-20 10 views
0

私はASP.Net(C#)でこれを行うための最良の方法についてアドバイスを求めています。asp.net - リストを値として辞書を表示していますか?

私は、私たちのオフィスのすべてのスタッフをリストアップし、タイムシートの4週間分の要約を掲載したページを作成しようとしています。

私はすべてのことを行うことができるタイムシートオブジェクトを毎週持っており、そこにデータを取得するために辞書を返すことができます。しかし、それをデータバインドする最良の方法は何ですか?すべてのスタッフのために

StaffMember - WEEK 1 (DATE) - WEEK 2 (DATE) - WEEK 3 (DATE) - WEEK 4 (DATE) 
--------------------------------------------------------------------------- 
BOB BUILDER - Val1, Val2,[] - Val1, Val2,[] - Val1, Val2,[] - Val1, Val2,[] 
OLD MATE - Val1, Val2,[] - Val1, Val2,[] - Val1, Val2,[] - Val1, Val2,[] 

などなど:私はそれを表示したい何

はこのようなものです。 []はチェックボックスを示し、このページを使用する人は、その週のタイムシートに関連する最後のものを処理したときにチェックを入れます。

私の考えはこれです: - テーブルの行とセルを持っている項目テンプレートの設定とリストビュー、および値 のためのリテラルを持っている - onitemdatabound keyvaluepairを取得し、スタッフの名前にリテラルのスタッフを設定します(キー)を入力し、各週の各値をリスト内の対応するタイムシートの値に設定します。

問題は、毎週の日付を動的に設定する方法がわかりません私はリストビューや何かのテンプレートのfindcontrolを行うことができると思いますか?または、リストビューの外にテーブルを設定しますか?しかし、ちょうどすべてが少し乱雑に感じるので、私はstackoverflowで賢い人々からいくつかのアドバイスを得るだろうと思った。これを行う簡単な方法はありますか?ネットで悩まされているような複雑な辞書を使用していて、それをやる別の方法がありますか?

答えて

0

ObjectDataSourceの実装を簡単に確認できます。最初はデータから選択するだけなので、実装が比較的簡単です。

辞書にSelect()呼び出しをフィルタするために使用できるDateプロパティを持つクラスを作成できます。次に、必要なときにいつでも新しい日付値を与えるためにコード内のObjectDataSourceを操作してから、再度グリッド上でDatabind()を呼び出すことができます。

関連する問題