ASP.NET2.0のハンズオンメモ

先週木曜日にハンズオンに参加してきました。その中で幾つか為になるけど、普段使った事が無い機能等紹介されていました。実業務ではもっと積極的に使っていかねば。。。


トレース

トレースは本稼動中のサイトにも組み込む事が出来るので障害が発生した時に原因解明やメンテナンス、パフォーマンスのチューニング等に役に立つ機能。


ASP.NET1.xからでもトレースは見る事が出来ます。プロパティウィンドウで[DOCUMENT]を選択し、Trace・TraceModeを設定するとイイです。


ちなみにコードを記述する事で、トレースにメッセージや変数の値を出力する事も出来ます。

 Me.Trace.Write(String.Format("○○"),型)

知ってる人は知っていると思いますが、ASP.NET Webサイト管理ツールからもアプリケーショントレースを設定することが出来ます。


トップページで[アプリケーション]タブを選択>[デバッグとトレース]の[デバッグとトレースの構成]を選択すると、アプリケーションのデバッグおよびトレースの設定を構成する事が出来ます。それぞれ自分が設定した異様にチェックボックスラジオボタンを選択した後戻るボタンで戻って下さい。


もし、トレース情報のキャプチャにチェックボックスをつけていた場合、アプリのトレースを確認する事が出来ます。


複数回アプリを実行した後、IEを起動して次のURLを入力してトレース情報を表示する事が出来ます。

  http://localhost:ポート番号/Webサイト名/Trace.axd

[詳細の表示]リンクをクリックすると各ページでの詳細なトレース情報が表示できます。

プリコンパイル

ASP.NET2.0からWebアプリケーションのプリコンパイル機能が追加されています。通常のWebアプリはクライアントからの要求が発生した時にアセンブリコンパイルされます。このためコンパイルエラーが実行時まで遅延してしまったりそのコンパイルの為の時間が若干ですがかかってしまいます。


プリコンパイルをする事でASP.NETの全てのページとコードをコンパイルする事が出来る為、エラーの発見やパフォーマンスの向上等に大きく貢献してくれます。


また、プリコンパイルをしておけば、バイナリファイル化させる事も可能です。この時HTMLやソースコードもDLLに格納されてソースの改竄防止やロジックの隠蔽に有効になります。

プリコンパイルの手順+[ビルド]>[Webサイトの発行]>[Webサイトの発行]ダイアログを表示
  1. ターゲットの場所を任意の場所に設定(チェックボックスはとりあえず全てオフ)
  2. OKを選択
  3. IEでターゲットの場所を入力して配布したWebアプリが動作するか確認する。*1

上記の注意点として、ターゲットの場所はテスト時はlocalhostで行った方がいい。

プリコンパイルされたWebフォームエクスプローラで『C:\Inetpub\wwwroot\発行したファイル名』フォルダを開いてプリコンパイルをした.aspxファイルをメモ帳で開いてみると、HTMLやソースコードは削除されていて次のようなメッセージが確認できます。
これは、プリコンパイルツールによって生成された
マーカーファイルです。削除しないでください。



ではHTMLやソースコードはどこに消えたのか?それらは\binフォルダにDLLとしてコンパイルされています。こうする事で隠蔽させる事が出来るわけです。
少し説明が長くなってしまいましたが、プリコンパイルはイイ事尽くしです。少し設定に時間がかかってしまいますがお釣りが十分に来るレベルの機能なので、
是非このプリコンパイルは積極的に使っていきましょう!!!


Web サイトの内容をプリコンパイルしておく方法

Webサーバー(IIS)との同期

ファイルシステム上に作成したプロジェクトをローカルWebサーバーの仮想ディレクトリに配置する方法。


これは直ぐに書けるような状況でもなく、画像あったほうがわかりやすいと思うので環境が整い次第もう1つのblogに書かせて頂きます。

*1:配布したアプリの起動時間が少し早くなっている事も注目してみるとイイ