私の友人は私のasp.netサイトでのみ更新パネルを使っていたので、本当に直接AJAX機能を使っていなかったと私に言いました。彼は何について話しているのですか?UpdatePanelと「伝統的な」AJAXとの違いは何ですか?
答えて
厳格なAJAX)非同期のJavascript(JS XMLHttpRequestオブジェクトを使用して)、およびXML(またはJSONを使用することを意味します。つまり、サーバーやその他のサービスに非常に軽量なコールバックを行い、結果を取得し、クライアント上で何らかの方法で処理します。双方(要求と応答の処理)はJavascriptを書く必要があります。
ASP.NET UpdatePanelsはこれを行いますが、すべての詳細をあなたから隠します。つまり、データ転送ペイロードは標準フォームPOSTのように見えます。返されるデータは実際には現在のページに文字通り挿入/置換されるHTMLブロックです。
これは(ページのライフサイクル全体を完了する必要があるため)サーバー上で「重い」呼び出しを行い、帯域幅の使用率を上げます。 ASP.NET MVCなどの新しいテクノロジでは、UpdatePanelsを使用する必要はなく、軽量JSONサービスを使用してデータを返すこともできますが、クライアント側でJavascriptを使用してUIにバインドする必要があります。
私はajaxアップデートパネルのWebサイトを持っており、これに対処するためにより低レベルのコードに移動したい場合、最も良い例は何ですか。 – leora
私はこのSOの質問があなたを助けるかもしれないと思う - http://stackoverflow.com/questions/415711/replace-updatepanel-with-jquery –
わかりません。
更新パネルを使用することで、.net ajaxがそのページのコンテンツを要求し、パネルに配置しています。これはかなり古典的な 'ajax'実装です。
彼はajax呼び出しを使ってデータをポスティングすることを指しているかもしれません。これはajaxパネルもカバーしていますが、jQueryを使ってどうやって行うのかとは異なります。
たぶん彼は、数千のJavaScriptペーパーカットに苦しむことなく、優れたクロスブラウザAJAX機能を持っていることに腹を立てているかもしれません。
うわー、なぜこれは下落していますか? –
更新パネルは、あなたが求めているものなら、AJAX拡張です。 ASP.NET says so!
は、たぶん彼はあなたに完全にAJAXコントロールツールキットを使用することを望んでいる - それは、dragPanelsを実装するWebオーサリングツール、カレンダー、アニメーション、アコーディオンなどなど
をもしそうなら、親切な方法で彼の中指のジェスチャーを示しています:)
彼はおそらく、client-side library for ASP.NET AJAXを参照しています。これにより、更新パネルに電力を供給するAJAXに直接アクセスできるようになります。
彼は、アップデートパネルがコアのAjax技術に依存していないという意味で間違っています。彼は、AJAXでもっと多くのことができてから、更新パネルで可能だという意味で正しいかもしれません。
彼は、UpdatePanelがあなたが意図しているよりも多くのデータを受け取る方法を話しているかもしれません。このウェブサイトは良い例を示しています:Why ASP.NET AJAX UpdatePanels are dangerous。同じサイトの別のページで、Are you making these 3 common ASP.NET AJAX mistakes?に関する良い情報があります。
これはちょっと主観的に聞こえるかもしれませんが、私は本当に良い経験といくつかの本当に悪い経験をUpdatePanelで持っています(そして、はい、UpdatePanelは実際 AJAXです)。
いいえ: UpdatePanelを使用すると、AJAX機能を既存のWebページに大幅に書き直すことなく容易に組み込むことができます。
Bad: UpdatePanelは、すべてのページデータをポストバックします。私はこれのために重大なパフォーマンスの問題を見ました。従来のASP.Netページに十分なサイズのビューステートデータがある場合、UpdatePanelはうまく機能しません。このビューステートデータはサーバー上で利用できますが、大規模なデータセットではなく、ユーザー数が増えると便利です。
プログラマーが多くのツールと同じように、UpdatePanelはうまくも悪くもありません。使用方法によって異なります。
厳密に言えば、私はUpdatePanelが実際にAJAXであることに同意する必要があります。
AJAXは、UpdatePanelよりもはるかに合理化されていると考えている人。 Webページの多くのajax機能には、クライアント側のHTTPリクエストを使用してサーバー上の情報を処理し、レスポンスを取得し、レスポンスに基づいてページ上の何かを更新する、非常に特殊なアクティビティを実行することが含まれます。
UpdatePanelは、同じように動作しますが、マクロレベルで動作します。 UpdatePanelには、本質的にフォームまたはフォームの要素をページに戻すコードが含まれています。このコードは、サーバー側から見ると、UpdatePanelを使用しない場合と同じ方法でポストバックイベントを処理して処理できます。
UpdatePanelに関連付けられたJavaScriptライブラリは、更新パネルにラップされたページの一部のみを更新します。
UpdatePanelにバンドルされているJavaScriptは、httpリクエストを使用してデータを投稿し、応答としてXmlを受け取ります。これも非同期です。それで、それはAJAXです。詳細はあなたから隠されているだけです。リクエストを直接操作せずにレスポンスを処理しても、AJAXではありません。しかし、UpdatePanelは、一般的なAJAXの実装と比較して、トラフィック/ペイロードの方が多少重いです。
- 1. 伝統的な違い:Ajaxコールの真のオプションとfalseは何ですか?
- 2. ディープラーニングと伝統的な人工ニューラルネットワークの学習の違いは何ですか?
- 3. ハイブリッド伝統/プッシュステートアプリケーションとは何ですか?
- 4. Laravelの理解と伝統的なテーブルマッピング
- 5. jQuery AjaxとUpdatePanelの利点は何ですか
- 6. 遺伝的アルゴリズムと進化戦略の違いは何ですか?
- 7. Microsoft AJAXとAJAX Proの違いは何ですか?
- 8. $ .ajaxと$ .postの主な違いは何ですか?
- 9. アニメーションとアニメーターの統一性の違いは何ですか?
- 10. FormviewとMS-Ajax UpdatePanel
- 11. リリース版と統合版の違いは何ですか?
- 12. データ統合ソフトウェアとESBの違いは何ですか?
- 13. LINQと伝統的なコレクションベースのアプローチ間の長所と短所
- 14. setとdidSetの基本的な違いは何ですか?
- 15. PUTとPOSTの技術的な違いは何ですか?
- 16. ToString()とConvert.ToString()の基本的な違いは何ですか?
- 17. jobconfとjobの基本的な違いは何ですか?
- 18. FlyweightとSingletonパターンの実用的な違いは何ですか?
- 19. 便宜的なinitとvimitの違いは何ですか?
- 20. async:falseとasyncの違いは何ですか:jquery ajaxでtrue? jqueryのAJAXで
- 21. AJAXとJSXの違いは何ですか?
- 22. ASP.NET AJAX pageLoad()とJavaScript window.onloadの違いは何ですか?
- 23. Microsoft jQuery UnobtrusiveとMicrosoft Ajaxの違いは何ですか?
- 24. 静的ブロックと静的フィールドの違いは何ですか?
- 25. 静的SQLと動的SQLの違いは何ですか?
- 26. ExtJS 6 GPLと商業的な違いは何ですか?
- 27. ヘルパーと部分的な違いは何ですか?
- 28. 具体的なRTNと抽象的なRTNの違いは何ですか?
- 29. この伝統と各ループのループの対応は何ですか?
- 30. 静的バインディングと動的バインディング - 違いは何ですか?
UpdatePanelsは、問題を解決するためにスレッジハンマーを使用するような、非常に鈍い手段です。外科的精度を必要とする非常に繊細なアプリケーションで作業する人は、スレッジハンマーがまだ正当なツールであると常に理解しているわけではありません(裏返して、多くの無知なデベロッパーがスカリーを使用する必要があるときにスレッジハンマーを使います) –