- - PR -
ページが変わった時のイベント
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-08-04 02:32
Visual Studio 2005 でWebサイトの作成を行っております。
Response.Redirect()でページ移動させているのですが、ページの終了イベントについてご教授下さい。 VisualBasic の Form_Unload() イベントに相当するのはやはりPage_Unload() でよいのでしょうか? あ!あと一つご教授下さい。 Page_Unload() の中で Request.ServerVariables("APPL_PHYSICAL_PATH") を実行するとサーバーエラーになってしまいます。 これって当然なのでしょうか? | ||||||||
|
投稿日時: 2006-08-04 04:06
WindowsのアプリケーションとWEBアプリケーションとでは仕組みがまったく違います。
WEBのしくみをどこまで知ってるかわからないので伝わるかわかりませんが、
まぁマニュアルを確認しましょう これはResponse.Redirectとは殆ど関係ありません。初回のアクセスでも、クライアントに応答を返して、 Pageのインスタンスが消えれば発生するでしょうし。 他のページに移動した時に初めて発生するものではありません(そんなイベントはないでしょうきっと)
Request.ServerVariables("APPL_PHYSICAL_PATH") と書いただけだったらコンパイル通りませんよね。どんなエラーが出たかも書くべきです。 全体的に、そもそも何がしたくて困っているのでしょうか | ||||||||
|
投稿日時: 2006-08-04 10:18
ベルさん早速のレスありがとうございます。
>全体的に、そもそも何がしたくて困っているのでしょうか ページが変った時にそのページに入力された情報を保存したい。。。という事から始まっています。 保存ボタンは設けているのですが^^; それで Form_Unload() イベントのようなものがあれば・・・と考えた次第です。 保存の方法ですが、現在ローカルマシン側に xmlファイル を作り、そこへ保存しようとしたわけです。 その為ローカルマシン側のパスが必要となり Request.ServerVariables("APPL_PHYSICAL_PATH") で取得しようとした。という次第です。 Page_PreRender() イベントで xmlファイル から既保存のデータを読み出し ページに初期セットしているのですが、その際同じように Request.ServerVariables("APPL_PHYSICAL_PATH") を使っていますが何の問題もなく使えています。 >どんなエラーが出たかも書くべきです。 Dim LocalPath As String = Request.ServerVariables("APPL_PHYSICAL_PATH") 尚、コンパイル時のエラーではなく実行時のエラーで 「このコンテキストでは要求が有効ではありません」 という内容です | ||||||||
|
投稿日時: 2006-08-04 10:31
> 保存の方法ですが、現在ローカルマシン側に xmlファイル を作り、そこへ保存しようとしたわけです。
セキュリティ的に問題があるとは思いませんか? いまのブラウザは簡単にはこんなことができないようになっています。 Webの仕組みをきちんと理解して仕様を作っていかないと破綻しそうな気がします。 | ||||||||
|
投稿日時: 2006-08-04 11:09
どっとねっとふぁん さんありがとうございます。
セキュリティ上問題があるのは承知しております。 それでも良いから。という了解は得ています。 当初はサーバサイドにxmlデータとして・・・とい構想だったのですが 今となってはイタシカタアリマセン。 >破綻しそうな気がします どのような解決方法がよいのでしょう? 今の私では上手い説得の言葉が見つけられないのですが | ||||||||
|
投稿日時: 2006-08-04 11:30
毎回ユーザ側に入力結果をダウンロードさせるようにすれば出来るかも知れないけれど、 これだと、毎回ファイルの保存ダイアログが出てしまう。。。 出来ない。と思ったほうが良いと思いますよ。
これは Webサーバ の物理ディレクトリであって、 クライアントの物理パスではありませんよね。 | ||||||||
|
投稿日時: 2006-08-04 19:17
皆様ありがとうございます。
>出来ない。と思ったほうが良いと思いますよ。 ふむ〜困りました^^; 何とか実現しなければならないのですが(大汗 >これは Webサーバ の物理ディレクトリであって、クライアントの物理パスではありませんよね。 そうなんですか?! 実機で試験はまだ出来ないのでVisualStudioのデバッグで何とか動いているのでまぁイイっか・・・位の感覚ででした。 それで、てっきりクライアント側の物理パスだと思っていました(コレマタ大汗 | ||||||||
|
投稿日時: 2006-08-04 19:52
ViewState Session クッキー クエリ文字列 データベース などに保持する。 Webアプリケーションの状態管理 http://www.atmarkit.co.jp/fdotnet/entwebapp/entwebapp03/entwebapp03_01.html あと、複数の画面を一つのWebフォームで管理するという手もあります。 # 値の受け渡しが簡単 ウィザード式の画面を一元管理するWizardコントロール MultiView&Viewコントロールによるマルチビュー画面の構築 http://www.atmarkit.co.jp/fdotnet/asp2review/asp2review03/asp2review03_03.html [ASP.NET]1つのWebフォーム内で一覧/詳細画面を切り替えるには? http://www.atmarkit.co.jp/fdotnet/dotnettips/354aspplchldr/aspplchldr.html |