TreeViewの使用中にパフォーマンスを最大限に引き出すにはどうすればよいでしょうか?ASP.NET TreeViewのパフォーマンス
パフォーマンスを最大限に高めることは、クライアントとサーバーの間のトリップ数、つまりポストバックを最小限に抑えることを意味します。
それは、私のビジネスロジックのほとんどがJavascriptに座っているということですか?ここで妥協は何でしょうか?
私はASP.netツリービューのサーバーコントロール
TreeViewの使用中にパフォーマンスを最大限に引き出すにはどうすればよいでしょうか?ASP.NET TreeViewのパフォーマンス
パフォーマンスを最大限に高めることは、クライアントとサーバーの間のトリップ数、つまりポストバックを最小限に抑えることを意味します。
それは、私のビジネスロジックのほとんどがJavascriptに座っているということですか?ここで妥協は何でしょうか?
私はASP.netツリービューのサーバーコントロール
最初に、プログラミングロジックを配置する場所を決めます。スピードを上げるには、クリックイベントを処理するための他のツリービューコントロール(テーブルレイアウトを使用しない)とjavascriptフレームワークを使用することをおすすめします。私はAJAX通信のためのプレーンな古いashxハンドラファイルを使用することをお勧めします、彼らはaspxや呼び出しページメソッドよりもオーバーヘッドが少ないです。 AJAX呼び出しと結果には、HTMLではなく、JSONまたはXML形式のデータのみが含まれている必要があります。
VSのようなRADツールとTreeViewコントロールでは、Webアプリケーションをすばやく作成できますが、いくつかの罰則があります。すべてのクリック/選択イベントを処理するためにサーバーに戻る必要があります。ページライフサイクルの処理と膨大な量のデータ転送(ajaxイベントごとに、HTMLとViewStateがサーバーからクライアントに転送されます)。
しかし、あなたは、ツリービューに固執したい場合は、私はお勧め:
- CSSフレンドリーコントロールアダプタ:彼らは大幅に(私の場合は、100キロバイトからHTMLの20キロバイトに)生成されるHTMLのサイズを小さくし、ULとテーブルレイアウトを置き換えます/ li要素
- ASP.NET AJAX UpdatePanel内でツリービューをラップしますが、ツリービューのみをラップし、パネルの条件付き更新を使用します。いくつかの更新パネルを使用することを恐れてはいけない
- ViewStateを最小限に抑える
開発のオーバーヘッドについて話しています - あなたは、JavaScriptと背後にあるコードの両方であなたのビジネスロジックを維持する必要があります。
スクリプトが大きい場合、クライアントのパフォーマンスが低下することも懸念されます。
は、実際にこの http://www.asp.net/ajax/documentation/live/overview/UpdatePanelOverview.aspx のUpdatePanelによると、私はUpdatePanelの中でツリービューを持っているツリービュー – sarsnake
と互換性がありませんが、いくつかのトリックをしなければなりませんでした。もし私がここに投稿して欲しいのであれば教えてください! –
いいえ、MSがUpdatePanelの中でそれをサポートしていないと言えば、私はそこで使うつもりはありません。 – sarsnake