とりあえず「一番シンプルな」プログラムを作ってみる

何はともあれ、Web Pageに出力をしてみましょう。 なんのひねりもなく、まず以下のようにプログラミングしてみてください。
<%@ Page language="c#" %>
<script runat="server">
public void Page_Load(Object sender, EventArgs e) {
string data;
  data = "Hello ASP.NET C# World!!";
  this.Response.Write(data);
}
</script>
拡張子を.aspxにした、適当なファイル名で保存。IISサーバにUp、URLを叩けば、表示できます。
…とまぁ「できます」で終わっても切ないだけなので、解説を少々。

<%@ Page language="c#" %>
大雑把に書くのであれば「これからASP.NETプログラムをC#で書き始めます」っていう程度の宣言です。
基本的には「気にせずに書く」くらいのイメージでよいかと思います。当面は。

<script runat="server">
いきなりHTMLエレメント「SCRIPT」です。しかもHTMLの勧告とか一通り無視したような場所に書かれています。問答無用です。
ポイントは、通常のHTMLドキュメントでは間違ってもお目にかかれない「runat="server"」というアトリビュート部分。これは「今回のscriptエレメントの要素は全部サーバで処理して頂戴」という意思表示を示します。これがないと「そのままクライアントに出力、クライアントのビュアーが処理(具体的には「ソースコードを問答無用で出力)」になってしまい不都合この上ないので、注意して入力してください。

public void Page_Load(Object sender, EventArgs e) {
いきなり「かなり普通のCGIから違う世界観に突入」ですが。とりあえず、一行目と同様「こーゆーもんだ」とあきらめてください。
Javaのservletをやっている人なら「public void service と一緒」と言うと分かりやすいかもしれないですね。
C++系の方は「これがmain()と==」とでも認識してください。

string data;
単純に「文字列クラスstringの宣言」をしています。よく見かける光景なので省略します。

data = "Hello ASP.NET C# World!!";
データを設定しています。「一行でまとめる」のでもよかったのですが、気分的に二行に分けてます。意味はさほどないので気にせずに。

this.Response.Write(data);
大きなポイントその1です。大抵の場合、CGIにおいて、出力は「print文などを用いて標準出力に出力する」のがポピュラーですが。
ASP.NETでは、その代わりに「用意されたメソッドに文字列を渡す」事で処理されていきます(Javaな人は「response.getWriter() と一緒」と思ってください)。
なので、出力データをここで引き渡しています。厳密には<HTML>からスタートするのが正しいのですが、そのあたりは面倒なので省略しています。気になる方は適宜「まともなボディ」に変更してみてください。

}
クラス定義を閉じる括弧です。

</script>
スクリプトの終了です。

基本はこんな感じになります。通常の参考書ですとこの後に「HTMLが美しく列挙される」のですが。その辺はあえて「やらない」方針でいきます。
具体的に「なぜやらないのか?」については後述いたします。

戻る 
Copyright 2005 M-Fr Net All Right Reserved
E-Mail:info@m-fr.net