概要
(書きかけ)
ラウンドトリップ
- CGI プログラムなんかだと、
- 次の処理に必要な情報は一度全部 HTML に書き出しておく
- ユーザがボタンを押した際とかには、
post されたデータの解析から処理をする必要がある
というように、ラウンドトリップを意識したプログラミングが必要
↓
- ASP.NET なんかだと、
そのあたりの面倒な処理はフレームワークが勝手にやってくれる。
プログラマは意識する必要なし。
- ASP.NET を使えば、Windows プログラムとほぼ同じ感覚で
ウェブアプリ構築可能。
- Page_Load とかのイベントハンドラを書くだけ。
Web フォーム
どういうイベントがどういう順で起こるか
http://msdn2.microsoft.com/ja-jp/library/ms178472(VS.80).aspx
Web アプリケーションの状態
- HTTP は状態を持たないプロトコル
- ページからページに遷移したときに、プログラムの状態は持ち越されない。
- ユーザの状態を保持したければ、ファイルに書き出したり Cookie を使ったり。
↓
- ASP.NET では、Web アプリケーションの状態がサーバ上に残る
- Web アプリケーションの設定
- IIS の設定で「仮想ディレクトリ」を作る際に、
「ASP などを実行する」をチェックして仮想ディレクトリを作ると、
その仮想ディレクトリ全体が1つの Web アプリケーションになる。
- 同一 Web アプリケーション内のページは同じ状態を共有する。
- 一定時間以内の同一ユーザ・同一ブラウザからのアクセスに対して、
1つのプロセスがずっと生き続ける。
- 通常はメモリ上に状態が残る。
設定によっては SQL サーバや Cookie を介した状態の共有も可能。
↓
- 別の Web アプリ(仮想ディレクトリ)間でのデータ共有は無理
- それをしたい場合は、ファイルや Cookie、DB サーバを介して
