ASP.NET

出典: フリー百科事典『ウィキペディア(Wikipedia)』

ASP.NETは、Microsoftが開発・提供しているWebアプリケーションフレームワークで、動的なウェブサイトやWebアプリケーションXML Webサービスの開発や運用を行う。ASP.NETはActive Server Pages.NET向けにしたものである。

目次

[編集] ASP.NETの特徴

ASP.NETは、それまでのWebアプリケーション構築の常識であった、HTMLの知識やHTTP通信の仕組み、ブラウザとサーバー間のデータのやりとりなどを抽象化して、GUIモデルによるアプリケーション開発が行えるようになっている。ページデザインは、以前のASPと同じようにHTMLを直接記述することもできるが、Visual Studioなどの開発環境を用いることでGUIによるページデザインが行えるようになっている。また、HTTP POSTの仕組みを利用したPostBackと呼ばれる仕組みを使うことによって、イベント駆動型プログラミングを実現している。 内部の仕組みは抽象化されているが、実際にはHTMLやHTTP、JavaScriptなど従来のモデルを使用しているため、通常のWebアプリケーションと同様にWebブラウザで表示できるというメリットがある。ただしその反面、WebブラウザやHTTPの制約に考慮して開発することが必要なのは従来通りであるため、Webアプリケーションが分からないプログラマでもWebアプリケーションを開発できるようになる魔法の杖では決してない。

また、ブラウザを認識して最適なHTMLを生成するほか、実行時に前回に実行したものと比べ変更があるときにのみコンパイルをしてキャッシュしておくため、ASPと比べ処理速度が向上している。
ASPはSSIから呼び出すことができるが、ASP.NETは呼び出せない。

[編集] ASP.NETの動作

IISではASP.NETはaspnet_isapi.dllというファイルがISAPIを利用して動作している。ASP.NETの動作に関する設定の多くは、*.configファイルを利用している。 事前にコンパイルされたファイルまたはDLLやコンパイルされていないファイルを指定したディレクトリに置くだけで動作する。

  • ASP.NETで使用するクラスの多くは、以下の名前空間で定義されている。
System.Web
System.Web.UI

[編集] ASP.NETで利用できる言語

Visual Studioでは、Visual BasicC#を既定の言語として選択するようになっているが、最終的にはコンパイルされたアセンブリで動作するため、C++/CLIJScript.NETなど.NETに対応した言語であれば様々な言語で記述することもできる。

[編集] 拡張子

  • aspx ファイル

一般的なウェブフォームページ

  • asax ファイル

アプリケーションレベルのロジックとイベントハンドリングの構築

  • ascx ファイル

オリジナルのユーザコントロールをウェブページで利用する場合に用いる

  • ashx ファイル

独自のHTTPハンドラの構築

  • asmx ファイル

ウェブサービスのページの構築

  • axd ファイル

アプリケーションレベルでのトレーシングのためのファイル

  • browser ファイル

Webサイトが許容するブラウザの構成を保存するファイル

  • config ファイル

Webアプリケーションの設定を記述するXML形式のファイル

  • cs/vb ファイル

コンパイル前のソースファイル。前者はC#言語で、後者はVisual Basic言語で記述される

  • master ファイル

ページに統一的なデザインを設定するマスターページファイル

  • sitemap ファイル

サイトマップの設定ファイル

  • skin ファイル

Webページのテーマスキンの構築

  • resx ファイル

ファイルの国際化(グローバリゼーション)や地域化(ローカリゼーション)する場合のリソースファイル

[編集] ディレクトリ構造

  • App_Code

*.csや*.vbなどのソースファイルを配置するディレクトリ

  • App_LocalResources

個々にばらばらになった地域化されたファイルを配置するディレクトリ

  • App_GlobalResources

たくさんのページの地域化するリソース (*.resx) を配置するディレクトリ

  • App_Themes

テーマファイルの配置するディレクトリ

  • App_Browsers

サイトの仕様に沿ったブラウザの定義を配置する *.browser ファイルを配置するディレクトリ

  • bin

ASP.NETで利用するバイナリファイルの配置に用いるディレクトリ

[編集] ASP.NETの文法

ASP.NETでは普通、コメント (<% %>)をbody要素内で使わない。

例1: Hello, Worldの文字列を出力させる。

<%@ Page Language="VB" %>
<script runat="server">
    Private Sub Page_Load()
        Label1.Text = "Hello, World"
    End Sub
</script>
<html>
 <body>
  <form runat="server">
   <asp:Label id="Label1" />
  </form>
 </body>
</html>

例2: コードを別のファイルに記述する。

Default.aspx

<%@ Page Language="VB" CodeFile="Default.aspx.vb" Inherits="_Default" %>
<html>
 <body>
  <form runat="server">
   <asp:Label id="Label1" />
  </form>
 </body>
</html>

Default.aspx.vb

Partial Class _Default
    Inherits System.Web.UI.Page
    Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Label1.Text = "Hello, World"
    End Sub
End Class

[編集] 開発ツール

[編集] 展開プラットフォーム

[編集] フレームワーク

[編集] 関連項目

[編集] 外部リンク