- - PR -
Webアプリで各画面の共通処理の実装方法について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2002-11-30 00:26
お世話になっております。
ASP.NETを使用して、Webアプリケーションを作成してみたいと思っています。 画面(aspxファイル)をいくつか作成することになると思うのですが、 各画面をロード(Form_Load)する度に毎回共通の処理を行いたい場合には、 どういった実装方法があり得るものでしょうか? スクリプト言語ではないので、ASP(VBScript)のようにincludeと言う訳には いかないですよね。 この共通の処理の内部ではApplicationやSession上のオブジェクトにも アクセスしたいのですが、共通クラス(csファイル,vbファイル)を作成した場合には、 ApplicationやSession上のオブジェクトにはアクセスできないのでしょうか? | ||||
|
投稿日時: 2002-11-30 07:17
VB.NETに限定して言うと、Publicなモジュールを作成して、
そのモジュール内に共通するルーチンをいれて画面ロード時に Page_Loadで呼び出すという手が使えるでしょう。 >この共通の処理の内部ではApplicationやSession上のオブジェクトにも >アクセスしたいのですが、共通クラス(csファイル,vbファイル)を作成した場合には、 >ApplicationやSession上のオブジェクトにはアクセスできないのでしょうか? これは私もいろいろ試したんですが、現時点では実現できていないため、 ApplicationやSessionオブジェクト内で使用する変数などを結局引数に 入れて渡している状態です。 | ||||
|
投稿日時: 2002-11-30 14:49
ふと思いついたので、投稿します。
それは「ApplicationやSessionそのものを引数で渡す」です。 コード(C#)にするとこんな感じでしょうか?
※呼び出すのは「PublicFunc(this.Application, this.Session);」とします。 | ||||
|
投稿日時: 2002-11-30 17:29
Web.UI.Pageを継承したクラス(PageBaseとでもしましょうか。)に
Session等にアクセスする関数を実装し、PageBaseを継承した形で 各ページを作成するのは如何でしょうか? せっかく継承が使えるのだから、使わにゃ損損ってことで; | ||||
|
投稿日時: 2002-11-30 17:35
ともさんのおっしゃるように、せっかくASPではなくASP.NETなわけで オブジェクト指向なのだからWeb.UI.Pageを継承させたクラスを作成するのが 良さそうですね。 みなさま、ありがとうございました。 |
1