###状況
ASP.NETのWEBフォームでGridViewを含むページを作っており、現在ソート処理を実装中です。
コードにスッキリしない点があるので質問させて頂きます。
###疑問点
ページロードで取得したDataTableをSession変数に格納し、ソート処理の時に取得して使っています。
処理自体は問題なく動くのですが、ひとつ疑問点があります。
コードの以下の部分ですが、右辺は本来dvではないでしょうか。
GridView1.DataSource = Session["dataset"];
Sessionから取得したDataViewを新規に作成したインスタンスに格納し並び替えを行っているので、その後、DataSourceにセットするのは Session["dataset"] ではなくdvだと思うのですが…。
試しにWindowsフォームアプリ(Sample1)で同じような内容を検証しましたが、再現できませんでした。
何か間違っているのでしょうか。
低レベルで申し訳ございません。ご教授願います。
###ソースコード
/以下を実行すると問題なくソートされる
protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
{
DataView dv = Session["dataset"] as DataView;
if (dv != null) { dv.Sort = "社員番号 DESC"; **GridView1.DataSource = Session["dataset"];** GridView1.DataBind(); }
}
//以下を実行すると『太郎』と表示される
private void Sample1()
{
object i = "太郎";
string i2 = i as string;
i2 = "花子";
MessageBox.Show(i as string);
}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/12/09 06:24