49

特定の条件、ボタンのクリックなどで最適に更新する必要があるさまざまなフィールドを表示する ASP.NET Web ページがあります。ASP.NET Update Panel を使用して AJAX を実装し、目に見えるポストバックを回避しました。

もともと、この能力を必要とする分野は1 つだけでしたが、すぐに他の分野に拡大しました。現在、私の Web ページには複数の UpdatePanels があります。

フォーム全体を単一の UpdatePanel にラップするか、個々の UpdatePanel を保持するのが最善かどうか疑問に思っています。

ASP.NET UpdatePanel を使用するためのベスト プラクティスは何ですか?

4

7 に答える 7

50

複数のパネルの方がはるかに優れています。UpdatePanelsを使用する主な理由の1つは、トラフィックを減らし、必要な部分だけをネットワーク経由で送受信することです。更新パネルを1つだけ使用することで、毎回完全な投稿を行うことができます。小さなJavascriptを使用するだけで、ちらつきなくページを更新できます。

一緒に更新する必要のあるページの一部がある場合は、他のパネルをトリガーして更新する方法があります。ただし、必ず複数の更新パネルを使用する必要があります。

于 2008-09-16T14:11:43.780 に答える
37

複数の更新パネルがある場合は注意が必要です。UpdateMode が Conditional に設定されていることを確認してください。そうしないと、1 つの更新パネルがサーバーに「ポストバック」されると、それらすべてがポストバックされます。

これらのツールを使用することを強くお勧めします

Web 開発ヘルパー( Web 開発ヘルパーと ASP.NET Ajaxの簡単なチュートリアルです)

フィドラー

于 2008-09-16T14:41:55.767 に答える
7

これらの回答のいずれも、選択肢間の保守性の比較について言及していません。3 番目のオプションは、更新パネルを使用せず、リバース ajax に任せることです。興味深いプロジェクトをチェックしてください: PokeInVisualJS.NET

于 2011-03-16T21:11:19.207 に答える
5

UpdatePanelが生成するPOSTのサイズのため、可能であれば複数のUpdatePanelを使用するのが最善だと思います。フィールドの更新などの小さなことに対して手動のAJAXアプローチを使用できるとさらに良いです。WPFは、これを実現するためのJavaScript関数とメソッドをいくつか提供します。役立つ可能性のあるリンクは次のとおりです。

于 2008-09-16T14:13:27.397 に答える
2

複数のアップデートパネルをお勧めします。複数のupdatepanelを使用すると、asp.netWebアプリケーションでupdatepanelを使用することの真の意味が維持されます。また、ある更新パネルを別の更新パネルからトリガーすることもできるため、ページ全体のコントロールと動作のコーディングが容易になります。

于 2008-12-17T13:10:09.780 に答える
2

単一の更新パネルを使用するのではなく、複数の更新パネルを使用することに完全に同意します.ページ全体をポストバックしたい場合は、特定の部分のみをポストバックする場合は、単一の更新パネルを使用することをお勧めします.

すべての updatepanel に対して updatemode="conditional" を作成していることを確認してください。そうしないと、すべての updatepanel が更新されます。

また、更新パネルの完全な使用法については、以下の投稿を確認してください

http://www.codeproject.com/KB/aspnet/Select_List_Box.aspx

于 2011-02-22T10:56:13.600 に答える
1

ベスト プラクティスについてはよくわかりませんが、私の経験では、複数のパネルがうまく機能し、一度に送信されるデータの量が減り、全体的な応答時間が長くなります。複数のパネルにより、各サーバー呼び出しの複雑さも軽減されます。

于 2008-09-16T14:01:19.563 に答える