.net column

.NET開発者のためのブログメディア
アプリ開発の画面

ASP.NET MVCでAjaxを使ってできる部分ビューの表示とは

2020年04月20日

ASP.NET MVCではビューでデータ表示を行いますが、その際は部分ビューと呼ばれるものを使うと便利です。さらにAjaxと組み合わせることで、面倒なエラー処理などをかなり簡略化して書けるようになり、コード全体がすっきりします。

SE
部分ビューの処理をもう少し楽に書きたいんですが、何か良い方法はないですか?
PL
それならAjaxを使う方法がありますよ。処理の記述が楽になるのでおすすめです。

ASP.NETとAjaxの関係について

AjaxはJavaScriptを用いてサーバーと非同期通信を行うための技術です。AjaxはASP.NET 3.5から正式に.NET Frameworkに含まれるようになり、ASP.NETのWebアプリケーションにおける機能を補完する役割があります。

JavaScriptコードからAjax Libraryを呼び出すという形式は非常に都合が良く、ASP.NETが目指す方向性と似通った部分を持っていたため、その後に続くASP.NET 4.0からは標準ライブラリとしてjQueryが追加されるに至りました。

そして、ASP.NETにおいて開発が進められていたAjax Libraryはマイクロソフト社のjQueryを搭載したことにより開発が終了し、その役割はMicrosoft Ajaxに引き継がれています(ASP.NETとマイクロソフト社のAjaxはそれぞれ異なるものです)。

部分ビューの表示

部分ビューとは、Webアプリケーションを開いているブラウザとは別に、ポップアップのような別画面を表示するものです。ASP.NET MVC 5の構成において、部分ビューの表示を行うためにAjaxを利用する方法が比較的簡潔で書きやすくなっています。Publicで宣言されたactionresultオブジェクトを返すメソッドの中で、Ajaxを利用した通信である場合にのみ、処理を実行する形が好ましいです。

SE
ソース構成がクライアントサイドとサーバーサイドに分かれているのが少しややこしいですね。
PL
部分ビューを使う方が簡単なんですよ。構成のパターンをしっかりつかんでおきたいですね。

非同期通信だからこそ可能なやりとり

同期通信はサーバーへの問い合わせを行う際に、処理待ちをしている通信が終わるまで待たなくてはなりません。不特定多数からのアクセスがあるWebアプリケーションにおいては、サーバーが通信中の状態においても次の処理を行える非同期通信があるからこそ、スムーズなやりとりが可能になります。Ajaxを用いた部分ビューの表示は、開発側にも簡潔な構成で組めるだけでなく、ユーザーに待ち時間を感じさせない理にかなったものです。


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

求人一覧

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)