About
Visual C#
統合開発環境ツール:Visual Studio 2008 Professional
データベース:SQL Server 2005 Developer Edition
OS:Windows7 RC

Objective-C
統合開発環境ツール:Xcode3.1.2
OS:Mac OS X v10.5.7 Leopard
  C#   ASP.NET   Link   Contact
         
ASP.NET Webアプリケーションプロジェクトの作成
 
  無料のExpress Editionはこちらから  
 
 

開発環境

統合開発環境:
Visual Studio 2008 Professional
使用OS:
Windows7 RC

 
 

  Webアプリケーションとは

Webアプリケーションとは、その名の通りWebサイト上で動作するアプリケーションの事です。従来のデスクトップアプリケーションとは違い、ブラウザ上から動作させることができるので、どこにいてもインターネットが繋がる環境であれば使うことのできるアプリケーションを作成することができます。

ASP.NETでは、C#を使用してWebアプリケーションを構築できるのが一番の特徴です。従来であればPerlやPHP、RubyといったWebサーバ上で動作する言語を新たに習得しなければならず、Webアプリケーションの作成は敷居の高いものでした。ASP.NETでは、言語としてデスクトップアプリケーション開発にも使われるC#やVBを使ってWebアプリケーションを構築できるので、「また新しい言語を習得しなければならないのか」と躊躇することなく開発に取り組めます。

とは言いつつも、Webアプリケーションを作成する上で少なからずHTMLの知識は必要です。VisualStudioでは「Webフォームデザイナ」と呼ばれるWebページをデザインするためのツールが用意されていますが、Webアプリケーションは動的にHTMLを作成できるところにも魅力があります。HTMLを習得すれば、よりインタラクティブなWebページを作成できますので、同時に習得していくことをお勧めします。

開発者にとっては優しいASP.NETですが、サービス提供者にとっては少し考えものです。Webアプリケーションを駆動させるためにはIIS(Internet Infomation Services)と呼ばれるサーバを構築する為のソフトウェアをインストールさせておく必要があります。このIISはWindowsに組み込まれている機能で、Windowsのバージョンによって機能に制限があります。特に気をつけなければならないのが同時接続数の制限です。Windows Vista Home Premiumでは同時接続数が3台に制限されており、個人利用であれば問題ないのですが、Webサービスを提供しようと思うと同時接続台数が制限されていないサーバクラスの導入が必要不可欠です。また、レンタルサーバを利用してASP.NET型アプリケーションを動かそうと思っても、無料でASP.NET型アプリケーションを動かせるところはほとんどありません。サービスを不特定多数の人に利用してもらおうと思うと、有料のサーバを借りなければならないのが今の現状です。

OSによるIISの機能制限については以下のホームページで詳しく解説されています。

TechNet:IIS 7.0: IIS 7.0 の認証機能の概要
http://technet.microsoft.com/ja-jp/library/cc753198(WS.10).aspx

  プロジェクトの作成

それでは実際にASP.NETのプロジェクトを作成してみましょう。ウィンドウ上部のメニューバーから 「ファイル」→「新規作成」→「プロジェクト」を選択します。

「新しいプロジェクト作成ウィザード」が表示されますので、左側にある「プロジェクトの種類」から「Visual C#」を選択します。次に、「テンプレート」の中から「ASP.NET Webサイト」を選択します。今回はプロジェクトの名前をデフォルトのまま「WebApplication1」に設定し、保存場所は好きなところを選んでください。

プロジェクトの作成では、それらしきテンプレートとして「ASP.NET Webアプリケーション」と「ASP.NET Webサービスアプリケーション」のふたつがありましたが、WebアプリケーションはユーザインターフェースのあるASPアプリケーションを作成するときに使用します。それに対し、Webサービスはユーザインターフェースを伴わないアプリケーションを作成するときに使用します。デスクトップアプリケーションから要求された処理に対してサーバ側で何らかの処理をしたい場合に使うと考えるとわかりやすいかもしれません。

実際に生成されたプロジェクトを見てみると、既にHTML形式のタグが実装されています。このファイルは「Default.aspx」ファイルを展開したもので、Webページをデザインする要素を記述していきます。Webアプリケーションの作成時は、ここにフォームやボタンなどを配置してWebアプリケーションの外観を実装していきます。

コードが表示部の下にある「デザイン」をクリックすると、Webフォームデザイナに切り替えることができます。Webフォームデザイナを使用すると、ページのデザインを確認しながら各部品を配置できるので非常に便利です。

「Default.aspx」ファイルはコントロールを配置するためのデザインビューと、実際にHTMLを記述するソースビューを使い、ユーザ側から見た実装を行うのが特徴です。

ウィンドウ左のソリューションエクスプローラを見てみると、「default.aspx」ファイルは+ボタンでひとつにまとめられています。ちょっと覗いてみましょう。

「default.aspx」ファイルを展開すると、その下に「default.aspx.cs」というファイルが格納されています。このファイルをダブルクリックすると、普段見慣れたC#によって記述されているのがわかります。「Default.aspx.cs」ファイルは、実際にボタンがクリックされたときにどのような処理を行うかを実装していくファイルです。「Default.aspx」ファイルは、サーバ側から見た実装を行います。

Webアプリケーションは、「Default.aspx」ファイルと「Default.aspx.cs」ファイル両方をコーディングし、実際に動作するアプリケーションへと仕上げていきます。

  実際に動かしてみる

それでは実際にこのアプリケーションを動かしてみましょう。ただ動かすだけでは面白くないので、少しコードを改変します。「Default.aspx.cs」ファイルを以下のように書き換え、実行してください。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

namespace WebApplication1
{
   public partial class _Default : System.Web.UI.Page
   {
      protected void Page_Load(object sender, EventArgs e)
      {
         Response.Write("動的に生成されたメッセージ");
      }
   }
}

実行しようと思うと、左のような警告メッセージが表示されます。標準の設定はデバッグが無効に設定されているために表示されるメッセージです。これらの設定は「Web.config」と呼ばれるファイルに保存されています。

「Web.config」ファイルはWebアプリケーションとWebサービスに対する設定を保持しているファイルです。「Web.config」はソリューションエクスプローラに表示されていますので、必要に応じていつでも変更する事ができます。

今後Webアプリケーションを作成していく上でたびたび変更しますが、現段階で設定するのはデバッグを有効にする事だけなので、詳細については割愛します。

実行結果
1
動的に生成されたメッセージ

「Response.Write」メソッドは、コンソールアプリケーションを作成したときに使用した「Console.Write」と同じ役割を果たすメソッドで、サーバがクライアントにメッセージを返したいときに使用します。HTMLコードを記述すればクライアントに対して動的に生成したHTMLコードを返すこともできます。

冒頭でASP.NETを動かすにはIISの導入が必要であることを紹介しましたが、VisualStudioには、開発用にASP.NETを動かすことができる「ASP.NET開発サーバ」が組み込まれています。これにより、IISがインストールされていないコンピュータでもWebアプリケーションを実行できる仕組みとなっています。

もちろん、実際に運用する際はIISの導入が必要となりますので注意してください。
   
Search:

Count:
inserted by FC2 system