Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

クライアントサイドの開発強化に注目!
~VS2010+ASP.NET 4.0新機能(前編)~

ASP.NET 4.0 Beta入門

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2009/12/22 14:00

ダウンロード FirstASP4.zip (1.0 MB)

 来年登場予定のVisual Studio 2010で、ASP.NETも4.0を利用できるようになります。そこでいち早くBeta版を対象に、前編/後編に分けてASP.NET 4.0に関する新機能や機能強化点を見ていきたいと思います。

目次

はじめに

 ASP.NET 4.0では、従来のASP.NETにおいて活用されていた機能がより使いやすくなっています。また、IDE側の新機能としてHTML/JavaScript側のコーディングサポートなど、Visual Studio 2008では多少煩雑であった部分の緩和につながる機能強化も行われています。

 前編/後編で紹介するASP.NET 4.0とVisual Studio 2010の新機能と機能強化ですが、今回はASP.NET 4.0の全体像、基本的な新機能、Visual Studio 2010の新機能、ASP.NET 4.0以前でも活用できるJavaScript周りのノウハウについて紹介します。

 なお、ASP.NET MVC V2に関しては別途紹介予定ですので、本連載では取り扱いません。

必要な環境

 次の環境が必要です。

今回触れる内容

 今回触れるのは、大別すると以下の4つです。

  • ASP.NET 4.0の全体像
  • ASP.NET 4.0の基本的な新機能
  • Visual Studio 2010のWebデザイナとコーディングサポート機能
  • ASP.NET AJAX Libraryの登場と強化されたクライアントサイドの技術

 ASP.NET 4.0とVS 2010がどういう構成なのかを前編で紹介します。

ASP.NET 4.0の全体像

 それでは、まずASP.NET 4.0の全体像を紹介します。とは言っても基本的にASP.NET 3.5と構成的に変わりはありません。

図1 ASP.NET 4.0全体像
図1 ASP.NET 4.0全体像

 ASP.NET 4.0は根底にCLR/BCLが存在し、その上に各アプリケーションが存在します。大別するとWebFormアプリケーション、Dynamic Dataアプリケーション、MVC V2が存在します。これらは組み合わせて開発もできますし、完成したアプリケーションは、SQL AzureやApplication Fabricの設定など、Windows Azureの準備が整えばWindows Azureにホストさせることもできます。

 さて、図を見てお気づきの方もいるかと思いますが、JavaScriptライブラリがすべてのアプリケーションをサポートしているのがASP.NET 4.0の特徴です。話題のjQueryはもちろん、ASP.NET 3.5までMicrosoft AJAX Libraryと呼ばれていたライブラリはjQueryとの親和性を高くし、AJAX Control Toolkitが統合され、「ASP.NET AJAX Library」と名称変更されました。大きくパワーアップしたASP.NET AJAX Libraryについては後述します。

 ASP.NETを今まで触れてきた方には差分を覚えるだけで開発が進められますし、ASP.NET未経験だけど、PHPなどでWeb開発を行ってきた開発者の方にとってもJavaScript周りの機能拡充や、MVC V2により入門しやすくなったフレームワークであると言えます。

ASP.NET 4.0の基本的な新機能

 ASP.NET 4.0の基本的な新機能について紹介します。

自動スタート

 .NETアプリケーションは初回起動が遅いです。特にASP.NETの場合、初回リクエスト時のレスポンスに対して事前にプリコンパイルするなどの工夫をしていることが多かったと思いますが、IIS 7.5とASP.NET 4.0を組み合わせることで、ユーザーからのリクエスト前に指定したアプリケーションを起動させることができるようになりました。

 これにより、ASP.NETのアプリケーションは遅い!というイメージを大幅に改善できると思います。

RedirectPermanentメソッドの追加(SEOへの親和性の強化)

 実運用の中では、メンテナンスやアプリケーションのバージョンアップなどに伴いディレクトリ間のファイルの移行などによるURLの変更が行われることがあるでしょう。

 このような場合に今までのASP.NETでは、HttpResponseオブジェクトのRedirectメソッドを使っていたかと思います。ASP.NET 4.0では、RedirectPermanentメソッドを使うことが推奨されます。

RedirectPermanentメソッド使用例
Response.RedirectPermanent("~/ScriptForm/Watermark.aspx");

 RedirectメソッドではHTTPコード302(Temporary Redirect:一時的な転送)を、RedirectPermanentメソッドはHTTPコード301(Permanent Redirect:完全な転送)をクライアントに送信します。

 クライアント側から302のリクエストがあった場合は、一時的に新しいURLに転送するという認識になるため、検索エンジンも今回だけという認識になり、検索結果のURLは古い情報を保持します。

 301のリクエストがあった場合は、今後リクエストがあった際に新しいURLへと転送を行うため、SEOにも新しいURLが検索結果として表示されるようになります。また、過去のURLの情報も引き継げるため、検索エンジンによる検索順位の向上にも繋がりますので、シナリオに当てはまる場合は本メソッドを活用してください。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

  • WINGSプロジェクト ナオキ(ナオキ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂...

バックナンバー

連載:ASP.NET 4 Beta入門
All contents copyright © 2005-2018 Shoeisha Co., Ltd. All rights reserved. ver.1.5