- - PR -
ブラウザを2つ起動すると、GridViewの更新が凄く重い
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2008-09-04 23:31
お世話になります。
現在、Ajax Extensionで開発をしておりますが、 掲題の件について質問があります。 画面にUpdatePanelを2つ配置し、それぞれにGridViewを追加しました。 それらのUpdatePanelはタイマーを使って一定間隔で更新します。 それぞれのGridViewにはObjectDataSourceを追加しました。 そして以下のコードを作成し、 それぞれのObjectDataSourceのTypeNameにClass1として設定しました。 さらにSelectMethodはそれぞれSelectData1とSelectData2を設定しました。 これでデバッグ実行してブラウザを表示させます。 更にブラウザを起動し、同じアプリを表示させると。。。 (http://localhost:2683/アプリ名/) 2つのブラウザ上にあるGridViewの更新が物凄く重くなります。 そしてさらに3つ目のブラウザを起動して同じアプリを表示させると。。。 途端に全てのブラウザでGridViewの更新が軽くなります。 ブラウザはIE7を使いました。 環境はVisual Web Developer 2005 Express Edisionです。 複数のブラウザを起動しても、更新速度に影響を出したくないのですが 良い手は無いものでしょうか。 public class Class1 { public static int c1 = 0; public static int c2 = 0; public Class1() { } public DataSet selectData1() { DataTable dt = new DataTable(); DataSet ds = new DataSet(); //列のタイトル作成 dt.Columns.Add("111"); dt.Columns.Add("222"); dt.Columns.Add("333"); dt.Columns.Add("444"); //1行追加(タイマーで書き分ける) if ((c1 % 2) == 0) { dt.Rows.Add("aaa", "aaa", "aaa", "aaa"); c1++; } else { dt.Rows.Add("bbb", "bbb", "bbb", "bbb"); c1++; } ds.Tables.Add(dt); return ds; } public DataSet selectData2() { DataTable dt = new DataTable(); DataSet ds = new DataSet(); //列のタイトル作成 dt.Columns.Add("abc"); dt.Columns.Add("def"); dt.Columns.Add("ghi"); dt.Columns.Add("jkl"); //1行追加(タイマーで書き分ける) if ((c2 % 2) == 0) { dt.Rows.Add("aaa", "aaa", "aaa", "aaa"); c2++; } else { dt.Rows.Add("bbb", "bbb", "bbb", "bbb"); c2++; } ds.Tables.Add(dt); return ds; } } 以上、宜しくお願い致します。 | ||||
|
投稿日時: 2008-09-04 23:45
Ajax は知らないので、あまり直接の回答ではないかもしれませんが、昔から、Web サーバー上で、ブラウザーを動かすとなにかが競合して遅いことは良くあります。(私も理由は良くしりませんが。) まずは、Web サーバー以外の PC でブラウザーを動かしてみて、それでも遅くなるかを調べられてはどうでしょうか。 |
1