- PR -

DataViewのViewStateへの保存

1
投稿者投稿内容
firecracker
会議室デビュー日: 2003/06/10
投稿数: 9
投稿日時: 2004-09-13 18:37
お世話になります。

表題の件ですが、ソート、フィルタリングをしたDataViewをViewStateへ保存することは可能でしょうか。

普通にViewStateへDataViewを保存しようとするとエラーが発生してしまいます。
ViewState["key"] = dataView;

また、他に代案がある場合はお教え願えないでしょうか。

よろしくお願いします。
burton999
ぬし
会議室デビュー日: 2003/10/06
投稿数: 898
お住まい・勤務地: 東京
投稿日時: 2004-09-13 18:53
DataViewはISerializableではないので無理だと思います。
ソート、フィルタリングの条件をViewStateに保存してくのではダメでしょうか?
firecracker
会議室デビュー日: 2003/06/10
投稿数: 9
投稿日時: 2004-09-13 19:07
ご回答ありがとうございます。

フィルタをした後に条件を設定してソートをかけるなどをするためDataViewが保存できるのが一番いいかと思ったのですが、やはりそういう方法しかないみたいですね。

後付で申し訳ないのですが、DataViewとDataTableの関係について質問させてください。

DataViewで変更した内容は、DataViewを取得したDataTable、DataSetに反映可能なのでしょうか。

この場合の内容はDataViewの内容(Rowの値)であって、Filter、Sortなどのことではありません。

以上です。よろしくお願い致します。
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2004-09-13 19:08
引用:

表題の件ですが、ソート、フィルタリングをしたDataViewをViewStateへ保存することは可能でしょうか。



DataViewの代わりにDataSetを保存して、DataSetからDataViewを生成したらどうでしょうか。

ViewState("DataSet1") = DataSet1
DataSet1 = ViewState("DataSet1")


ラウンドトリップ時のトラフィックを軽減するためDataViewをキャッシングしたらどうでしょうか。

Cache("DataView1") = DataView1
DataView1 = Cache("DataView1")
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2004-09-13 19:14
引用:

DataViewで変更した内容は、DataViewを取得したDataTable、DataSetに反映可能なのでしょうか。



DataViewで変更した内容は、DataTable, DataSetにも反映されます。DataTable, DataSetをデータベースに反映するには、DataAdapterのUpdateメソッドを使用します。
firecracker
会議室デビュー日: 2003/06/10
投稿数: 9
投稿日時: 2004-09-13 23:11
ご返答ありがとうございます。

DataSet関係などは周辺に色々なオブジェクトが存在していて、関係を認識するのが大変ですね。

とても参考になりましたありがとうございます。
1

スキルアップ/キャリアアップ(JOB@IT)