マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

クライアント・サイドのJavaScriptフレームワークとシームレスに連動して部分更新を実現する仕組み。

詳細

ASP.NET Web FormsUpdatePanel?

特徴

  • UpdatePanel?を敷いた部分が部分更新となる。
  • ソレ以外の部分は、全体更新と成る。
  • 仕組みとしては、
    • 部分更新イベントで全情報がポストバックされ、
    • 対象となるイベント・ハンドラが実行され、
    • 部分更新される部分のHTMLが返され、
    • 返されたHTMLがレンダリングされる。

参考

  • @IT

ASP.NET MVCのAjax.BeginForm?

特徴

  • Html.BeginForm
    • モジュール構造は大きく変わらない。
      (部分ビューは、共通化目的でHtml.BeginForm?にも存在する。)
  • ただし、以下のように動作は大きく異なる。
    • jQueryを使用してリクエストし、
    • 更新部位のレスポンスを受けてJavaScriptで描画。
  • 部分更新のターゲットを意識する必要がある。
    • 送信時に設定したターゲット以外を更新しようとして、結果的に画面遷移する場合、
    • RedirectToAction?RedirectToRoute?等でActionResult?を返すことが出来ないので、
      JavaScriptResult?等でJavaScriptを返し、画面遷移をする必要がある。

disconへ。

以下の問題が大きかったのか、ASP.NET Core MVCで、disconとなっている

参考

  • 連載:ASP.NET MVC入門:第3回
    ActionResult?オブジェクトでアクション操作も自由自在 (4-5) - @IT
    http://www.atmarkit.co.jp/ait/articles/0907/10/news109_4.html

    その性質上、Ajax通信の結果をページの一部に
    反映させるようなケースで利用することになるだろう。

部分描画の問題点

懸念

もともと、ASP.NET Web FormsUpdatePanel?では、

  • ScriptManager?がブラックボックスで
  • 他のJavaScriptに干渉する可能性があり。
  • 危なっかしくて触りたくない感があった。

実際

実際のトコロ、

  • JavaScriptの挙動の分析が困難になり、
    特に、サーバー側でJavaScriptを生成してUIを制御しているとき
    問題発生時のトラブルシュートが難しくなることがある。
  • 部分描画では、ブラウザがレスポンス待ちかどうかユーザが識別できず、
    レスポンスに時間が抱えるケースで、UXが低下するという問題を生んだ。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-02-05 (水) 15:58:59 (1532d)