株式会社ソフテック
株式会社ソフテック
制御用ソフトウェアの受託開発を手がけて40年の経験と
受注案件4750件
(2012年4月末時点)の実績

HOME会社概況業務内容開発分野開発事例CANモジュールソフテックだよりお問い合わせ
HOMEソフテックだより > 第145号(2011年9月7日発行) 技術レポート「ASP.NETによるWebアプリケーション開発」

「ソフテックだより」では、ソフトウェア開発に関する情報や開発現場における社員の取り組みなどを定期的にお知らせしています。
さまざまなテーマを取り上げていますので、他のソフテックだよりも、ぜひご覧下さい。

ソフテックだより(発行日順)のページへ
ソフテックだより(技術分野別)のページへ
ソフテックだより(シーン別)のページへ


ソフテックだより 第145号(2011年9月7日発行)
技術レポート
「ASP.NETによるWebアプリケーション開発」

1. はじめに

最近はブラウザで動作するWebアプリケーションを目にする機会が増えてきています。
今回は、ASP.NETを使用したWebアプリケーションの開発事例について紹介させていただきます。

2. ASP.NET開発の概要

2-1. Webアプリケーションの仕組み

Webアプリケーションとは、Webブラウザからの要求に対して、HTMLデータを動的生成するプログラムのことです。(図1参照)

Webアプリケーションの仕組み

図1. Webアプリケーションの仕組み


Webアプリケーションの利点は以下の点にあります。
2-2. ASP.NET開発の特徴

ASPは、「Active Server Pages」の略で、マイクロソフトが開発したウェブページを動的に作成する技術です。ASP.NETは、その後継技術で.NET Framework対応など大幅な拡張が行われています。
他にWebアプリケーション開発に使われる技術として、CGIやJava サーブレットなどがあります。それらの技術と比べて、ASP.NET開発には以下のような特徴があります。
2-3. ASP.NET開発の流れ

1. Visual Studioのプロジェクト準備

ASP.NETの開発を行う場合、Visual Studio から新規プロジェクトを作成します。
この際、アプリケーションの種類は、「ASP.NET Webアプリケーション」を選択します。(図2参照)
すると、プロジェクトの雛形が作成されますので、そのまま開発を進めることができます。

新規プロジェクトの作成画面

図2. 新規プロジェクトの作成画面


2. デバッグ

アプリケーションのデバッグ実行も可能です。ブレークポイントを設定しておけば、Webからその処理が呼ばれたときに、ブレークポイントの位置でプログラムが停止します。
あとは通常のデバッガと同じようにデバッグをすることができます。

3. アプリケーションの実行

アプリケーションの発行処理により、Webサーバがプログラムの実行に必要なファイル一式を出力することができます。

IIS(Internet Information Service:インターネットインフォメーションサービス)で、アプリケーションの追加を行い、IISにプログラムの実行場所(URL)を登録します。後はクライアントPCのブラウザからIISで登録したURLにアクセスすれば、Webアプリケーションを使用することができます。
※64bit OSの運用環境で、32bitアプリケーションを動作させたい場合は、IISの設定で、32bitアプリケーションを有効にする必要があります。

3. ASP.NET開発事例

3-1. ファイルダウンロードシステム概要

ファイルダウンロードシステム概要

図3. ファイルダウンロードシステム概要


最近、私がかかわりましたファイルダウンロードシステムについて説明致します。

[1]. リスト更新要求

Webブラウザ上からリスト更新条件(日付指定、ダウンロード済みかどうか)を行い、Webサーバへリスト更新要求を行います。

[2]. リスト更新応答

取得したファイルリストを基に、HTMLデータを作成し、応答としてWebブラウザに送信します。その結果、ファイルリストがWebブラウザで表示されます。

[3]. リスト更新応答

取得したファイルリストを基に、HTMLデータを作成し、応答としてWebブラウザに送信します。その結果、ファイルリストがWebブラウザで表示されます。

[4]. ダウンロード要求

ファイルリストからダウンロードしたい項目をチェックボックスで選択し、Webサーバへダウンロード要求を行います。

[5]. データ取得

選択したダウンロード項目に対し、SQL文を生成し、必要なデータを取得します。

[6]. データ更新

取得したデータをダウンロード済データとして、更新します。

[7]. ダウンロード応答

取得したデータを基に、ダウンロードファイルのデータを作成し、応答としてWebブラウザに送信します。その結果、Webブラウザ側にファイルのダウンロードダイアログが表示されますので、そこで、「開く」を押すと、ダウンロードしたファイルを確認することができます。

3-2. 開発環境

今回の開発環境は以下の前提とします。
※通常、Microsoft Visual Studio 2010の.NET Frameworkのバージョンは4.0ですが、今回は以下の理由により3.5を使用しています。
3-3. 開発で苦労したところ

1. Visual Studioのクエリビルダが複雑なSQL文に対応していない。

SQLServerでは問題なく使用できるSQL文でも、Visual Studioのクエリビルダで使用できないものがありました。具体的には、CONVERTなどがSQL文に使われている場合、Visual Studioのクエリビルダがエラーで強制終了してしまいます。ただし、SQL文の構文が間違っているわけではないので、クエリビルダを使用しないで、直接ソースコードにSQL文を埋め込む場合は、問題なく動作します。

2. ダウンロードした項目が、Webブラウザ上にダウンロードされていないように表示されてしまう。

たとえば、3-1の[4]の段階でまだダウンロードしていない項目を選択し、ダウンロードしたとします。
その場合、3-1の[6]の段階でダウンロード済みと状態が変わっておりますが、Webブラウザの画面上は、3-1の[4]の画面状態から変わらないため、ダウンロードされてない表示の状態のままとなってしまいます。

Webアプリケーションにおいて、要求と応答は1対1の関係にあり、3-1の[7]でダウンロード応答を受け取った時に画面の更新を同時に行うことはできません。そこで、ダウンロード要求後、一定時間経ったら、リスト更新要求を出すようにすることで、問題を回避しました。

4. おわりに

今回は、ASP.NET開発の概要とその開発事例についてご紹介させていただきました。
拙い文章ですが、お読みくださりありがとうございました。本稿が皆様の参考になれば、幸いです。

(K.S.)



関連ページへのリンク
開発紹介のページへ

関連するソフテックだより
ソフテックだより(技術分野別)〜パソコンソフトウェア開発〜のページへ
ソフテックだより(シーン別)〜設計〜のページへ
ソフテックだより(シーン別)〜デバッグ・テスト〜のページへ

ソフテックだより 第87号 (2009年4月1日発行) 技術レポート「.NETアプリケーションでのユーザーコントロールの活用」

ソフテックだより(発行日順)のページへ


お問い合わせはこちら
 TEL:03-5368-1641
Copyright(C) 1997-2012 SOFTECH CO.,LTD.