目次＞　第2章 チュートリアル学習環境の整備

# 第2章 チュートリアル学習環境の整備

本章では、チュートリアルを学習するにあたって、 必要となる環境を準備する。

## 2.1 クライアントフレームワークと環境整備との対応

### 2.1.1 開発環境の確認

開発環境を確認する。本チュートリアルでは以下の開発環境を想定して解説している。

- フレームワーク : TERASOLUNA Server/Client Framework for .NET ver 2.1.x.x
- OS　:　Windows XP Professional SP2 (日本語版)
- CLR　:　.NET Framework 2.0
- 統合開発環境　:　Visual Studio 2005 Team Edition for Software Developers
- Webサーバ　：　インターネット インフォメーション サービス（以下、IIS） 5.1
- ライブラリ : Enterprise Library 3.1 - May 2007

なお、本チュートリアルでは、以上の製品が既にインストールされているものとして解説を行うため、 これらの製品が、学習を行うPCにインストールされていることを確認する。各製品がシステムにインストールされているかどうかは、コントロールパネルの「プログラムの追加と削除」で確認することができる。

##### 備考

- TERASOLUNA Server/Client Framework for .NET ver 2.1.x.x のインストーラは、"http://sourceforge.jp/projects/terasoluna/files/"からダウンロードすることができる。
- サンプルアプリケーションを動作させるだけの場合は、統合開発環境はインストールされていなくてもよい。
- Visual Studio 2005 Team Edition for SoftwareDevelopersのインストールを既定の設定のまま進めた場合、同時に.NET Framework 2.0もインストールされるため、別途インストールする必要はない。
- IISと.NET Framework 2.0をインストールする場合は、必ず、IISを先にインストールすること。IISでASP.NETが動作しない場合は、IISと.NETFrameworkのインストール順序についてを参照のこと。
- Enterprise Library 3.1 - May 2007のインストーラは、"http://www.microsoft.com/DownLoads/details.aspx?familyid=4C557C63-708F-4280-8F0C-637481C31718&displaylang=en"からダウンロードすることができる。

## 2.2 クライアント環境の整備

本節では、第3章 サンプルアプリケーションの構築のチュートリアルを実施するために必要な環境の整備を行う。

### 2.2.1 使用するアーカイブ

クライアント側のチュートリアルの学習に使用するアーカイブは以下の通りである。

表2-1 アーカイブファイル一覧

アーカイブ | ファイル名 | 説明
terasoluna-server-client4n-tutorial_2.1.x.x.zip | terasoluna-sample-client-cs-blank.zip | C#版のチュートリアル実施前のクライアントサンプルアプリケーションのブランクソリューション。C#でサンプルアプリケーションを構築する場合は、このSampleソリューションを利用する。
| terasoluna-sample-client-cs-complete.zip | C#版のチュートリアル実施後のクライアントサンプルアプリケーションの完成ソリューション。クライアントサンプルアプリケーションの動作確認や、C#で記述された完成版ソースコードを参照する場合にこのソリューションを利用する。
| terasoluna-sample-server-rich-cs-complete.zip | C#版のチュートリアル実施後のサーバサンプルアプリケーションの完成ソリューション。サーバサンプルアプリケーションの動作確認や、完成版ソースコードを参照する場合にこのソリューションを利用する。

##### 備考

- 本チュートリアルでは、参考としてチュートリアル実施後の完成版ソリューションも提供している。
  完成版を利用する場合は、「terasoluna-sample-client-cs-blank.zip」の代わりに「terasoluna-sample-client-cs-complete.zip」を利用する。

### 2.2.2 チュートリアル学習用のブランクソリューションの準備

チュートリアルにより学習を行うクライアントアプリケーションの初期プロジェクトであるブランクソリューションの準備を行う。

#### 2.2.2.1 ソリューションの準備

1. terasoluna-sample-client-cs-blank.zipを解凍する。
2. 解凍して作成されたTutorialClientBlankフォルダを任意のフォルダへ配置する。
3. Visual StudioでTutorialClientBlankフォルダ直下に格納されたソリューションファイル（TutorialClientBlank.sln）を読み込めることを確認する。

以上でブランクソリューションの準備は完了である。以降ではブランクソリューションのソリューション構成と、ソリューション中に含まれるアプリケーション構成ファイル(App.config)について解説する。必要に応じて読んでいただければよい。

#### 2.2.2.2 ソリューションの構成

ブランクソリューションの構成を以下に示す。

表2-2 ソリューションの構成

ファイル格納場所 | ファイル名 | 実装対象 | 説明 |
TutorialClient | LogonForm.cs | ○ | ログオン画面 | ログイン認証をするための画面。
| MenuForm.cs | ○ | メニュー画面 | 計算画面、ファイルアップロード画面、ファイルダウンロード画面へ遷移するためのメニュー画面。
| CalcForm.cs | ○ | 計算画面 | 掛け算をするための画面。
| FileUploadForm.cs | ○ | ファイルアップロード画面 | ファイルを複数選択しサーバへファイルアップロードするための画面。
| FileDownloadForm.cs | ○ | ファイルダウンロード画面 | ３つの形式(テキストファイル、CSVファイル、画像ファイル)のうちから一つ選択しファイルダウンロードをするための画面。
| App.config (共通) | × | アプリケーション構成ファイル | 以下の設定がされている。 ・通信先のURL ・ビジネスロジック設定ファイルのパス ・データセット変換設定ファイルのパス ・画面遷移設定ファイルのパス
| Program.cs | × | エントリ ポイント | アプリケーションで発生した未処理の例外をハンドルするUnhandledExceptionイベントハンドラが実装されている。
TutorialClient \Config | BLogicConfiguration .config (共通) | ○ | ビジネスロジック設定ファイル | ビジネスロジック名・ビジネスロジッククラスの型を定義する。
| ConverterConfiguration .config (共通) | ○ | データセット変換設定ファイル | 画面データセットとビジネスロジック入出力データセットの変換情報を定義する。
| ViewConfiguration .config (共通) | ○ | 画面遷移設定ファイル | 画面ID・画面クラスの型を定義する。
TutorialClient \Validation | － | ○ | － | 入力値検証設定ファイルを格納するフォルダ。
| ValidationConfiguration .config (共通) | ○ | 入力値検証設定ファイル | 入力値検証を行う画面データセットのカラムと入力値検証種類を定義する。
TutorialClient \ViewData | － | ○ | － | 画面データセットを格納するフォルダ。

※実装対象 = ○ ： 第3章 サンプルアプリケーションの構築で実装するファイルや実装したファイルを格納するフォルダ。

#### 2.2.2.3 アプリケーション構成ファイル（App.config）について

ブランクソリューションが提供するアプリケーション構成ファイルを以下に示す。
チュートリアルを進める上で、初期設定でそのまま動作するようになっているが、外部設定ファイルのパスや通信するサーバのURLなどを変更する場合には、各自でアプリケーション構成ファイルを変更すること。

App.config

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <configSections>
        <!-- blogicConfiguration要素と解析クラス -->
        <section name="blogicConfiguration" type="TERASOLUNA.Fw.Common.Configuration.BLogic.BLogicConfigurationSection, TERASOLUNA.Fw.Common"/>
        <!-- conversionConfiguration要素と解析クラス -->
        <section name="conversionConfiguration" type="TERASOLUNA.Fw.Client.Configuration.Conversion.ConversionConfigurationSection, TERASOLUNA.Fw.Client"/>
        <!-- viewConfiguration要素と解析クラス -->
        <section name="viewConfiguration" type="TERASOLUNA.Fw.Client.Configuration.View.ViewConfigurationSection, TERASOLUNA.Fw.Client"/>
      </configSections>

      <!-- 利用するビジネスロジック設定ファイルのリスト -->
      <blogicConfiguration>
        <files>
          <file path="Config\BLogicConfiguration.config"/>
        </files>
      </blogicConfiguration>

      <!-- 利用するデータセット変換設定ファイルのリスト-->
      <conversionConfiguration>
        <files>
          <file path="Config\ConverterConfiguration.config"/>
        </files>
      </conversionConfiguration>
      <!-- 利用する画面遷移設定ファイルのリスト-->
      <viewConfiguration>
        <files>
          <file path="Config\ViewConfiguration.config"/>
        </files>
      </viewConfiguration>

      <appSettings>
        <!-- 通信先URL設定 -->
        <addkey="BaseUrl" value="http://localhost/TutorialServerRich/Request.aspx"/>
      </appSettings>

    </configuration>

表2-3 アプリケーション構成ファイルの設定

項目 | 説明
外部設定ファイルのパス指定 | それぞれの設定ファイルに対応するfile要素のpath属性に外部設定ファイルのパスを指定する。 外部設定ファイルが複数存在する場合、ファイルの数だけ、file要素を追加する。 ファイルシステム上の絶対パス、または、実行ファイルを基準とした相対パスを指定することができる。 Client FWで利用する設定ファイルには、ビジネスロジック設定ファイル、データセット変換設定ファイル、画面遷移設定ファイル、入力値検証設定ファイルの4種類があり、そのうちアプリケーション構成ファイルでは入力値検証設定ファイル以外について指定を行う必要がある。
通信先URL | appSettings要素内にadd要素を記述し、key属性は「BaseUrl」を指定し、value属性に通信先となるサーバアプリケーションのURLを指定する。 アプリケーション構成ファイルでは、複数の通信先を指定することができない。通信先URLを複数指定した場合、最後に指定したURLが有効となる。

## 2.3 サーバ環境の整備

クライアントアプリケーションが通信を行うサーバアプリケーションの配置を行う。
なお、ここではクライアントアプリケーション構築の学習を行うため、サーバアプリケーションはあらかじめ完成したものを利用する。

#### 2.3.1 サーバアプリケーションの配置

1. terasoluna-sample-server-complete.zipを解凍する。
2. TutorialServerRich.slnを実行しソリューションビルドをする。
3. 解凍してできたTutorialServerRichフォルダをC:\Inetpub\wwwrootへ「コピー」する。

※ TutorialServerRichフォルダを右クリック「切り取り」でC:\Inetpub\wwwrootへ移動すると、フォルダやファイルのアクセス権限が正しく設定されない場合があるため、必ず、右クリック「コピー」すること。
（理由：フォルダをコピーにしないと、TutorialServerRichフォルダ配下のファイルに、IIS用Windowsユーザのアクセス権限が付与されないため。）

図2-1 サーバアプリケーションの配置例

#### 2.3.2 IISの設定

1. IISの管理画面(コントロールパネル→管理ツール→インターネット・インフォーメーション)を起動して、TutorialServerRichフォルダのプロパティ画面を開く。

図2-2 TutorialServerRichのプロパティ表示

2. TutorialServerRichのプロパティ画面の仮想ディレクトリタブで、アプリケーションの作成を行う。

図2-3 アプリケーション作成

図2-4 アプリケーション作成

3. 認証方法の確認を行う。

- TutorialServerRichのプロパティのディレクトリセキュリティタブを選択し、編集ボタンを押下する。

図2-5 認証方法の確認

- 匿名アクセスのチェックを行う。

図2-6 認証方法の確認

#### 2.3.3 サーバアプリケーションの動作確認

配置したサーバアプリケーションが正常に動作していることを確認する。

1. Webブラウザから、サーバアプリケーションへアクセスする。

       URL：http://localhost/TutorialServerRich/Index.aspx

2. サーバアプリケーションが正常に動作している場合、Webブラウザに以下のメッセージが表示される。

図2-7 サーバアプリケーションの動作確認

次章：第3章 サンプルアプリケーションの構築