2009-07-27 10 views
7

私はASP.NETには新しく、a few problemsに頭を打った後、私が間違っているかどうか疑問に思っています。私は、ASP.NETの動作について学習することに興味があります。ASP.NETページでは何をすべきですか?

私の質問は次のとおりです。どのような処理を行うかを決定するガイドはどこにありますか?

  • 私はPage_Loadにどのような処理を行う必要がありますいくつかの具体例(私はこれらの答えに興味があるが、私はむしろ、より一般的な答えを与えるリソースに指摘されると思い)として

  • Loadイベントではどのような処理を行う必要がありますか?
  • 何かです。私はPage_Unloadで行っていますか?
  • どのような処理が行われるのですか?
  • 各イベントはいつ開始されますか?
  • ページのライフサイクルは何ですか?

編集:this questionはまた、いくつかの人々への使用であるかもしれません。

+2

ASP.Netページライフサイクルは、別の犠牲者を主張します。 – womp

+0

何ですか?私は今や中毒になることになるかな? '' – BCS

+0

いいえ、生産性が低いだけです。 :-) –

答えて

4

ここから始めるには適切なリンクがあります。 を理解する方法 ASP.NETのライフサイクルは、コードが相互作用する方法を理解するうえで重要です。

ASP.NET Page Life Cycle Overview

ASP.NETページの実行、ページ は は、一連の処理を実行するライフサイクルを通過します。 これらには、初期化、制御のインスタンス化、状態の復元、イベントの実行 ハンドラコードの復元とレンダリング、およびレンダリングが含まれます。 ページのライフサイクルを理解することが重要です。 コードを適切なライフサイクル のコードで書くことができます。カスタム コントロールを開発する場合 また、あなたは正しく、コントロールを初期化 ビューステートデータと 移入コントロールのプロパティ、および任意のコントロール 行動のコードを実行 するために、ページのライフサイクル に精通している必要があります。 ( コントロールのライフサイクルは、ページの有効期間である サイクルに基づいていますが、このページでは、ASP.NETページだけで より多くのイベントを発生させます。)

The ASP.NET Page Life Cycle

ページリクエストが提出 や位置の変更により、ページがその 作成中の一連のイベントを通じて を実行しているかどうか、ウェブ サーバーに送信され

および処分。 ASP.NETページをビルドしてこの実行を サイクルに入れないようにすると、 は の頭痛を引き起こす可能性があります。ただし、 が正しく操作された場合、ページの 実行サイクルは有効な と強力なツールになります。多くの開発者は です。 がどのようなことを起こしたかを理解することが重要です。 は、ASP.NETページ またはユーザーコントロールを効果的に作成することが不可欠です。そこで、 に、ASP.NET ページの10個のイベントを作成から廃棄まで詳細に調べてみましょう。我々は これらの イベントを利用して独自のカスタムコードを移植する方法も見ていきます。

+0

これらのリンクはどちらも便利です。ありがとう。 – BCS

5

あなたが今質問した質問を理解するために学ぶ必要がある最初のものは、次のとおりです。PAGE LIFE CYCLE。それは時々雌犬、特にViewStateの部分です。

•Page_Loadではどのような処理を行う必要がありますか?

•Loadイベントではどのような処理を行う必要がありますか? = Page_load

•Page_Unloadで何ができますか? クリーンアップ

•どのような作業が行われますか? ページライフサイクル

•各イベントはいつ開始されますか? ページライフサイクル

•ページのライフサイクルとは何ですか? alt text http://www.eggheadcafe.com/articles/o_aspNet_Page_LifeCycle.jpg

編集:イメージソース:http://www.eggheadcafe.com/articles/20051227.asp

さらに詳しい情報:様々な人々によって投稿http://www.codeproject.com/KB/aspnet/PageLifeCycle.aspx

+0

あなたはそのイメージがどこから来たかへのリンクを持っていますか?いくつかの説明がなければそれほど良いことはありません。 – BCS

+1

ダイナミックに作成されたオブジェクトにイベントハンドラを配線するほどのことはありません;) – BenAlabaster

+0

残念ながら、そのリンクはあまりコンテキストを提供しません。 – BCS

5

リンク確かに非常に便利です - ASP.NETページのライフサイクルが実際には必ずしも容易ではありませんgrokとマスター!

アドバイスのナゲットについて - オーバーライドされたメソッドと "魔法のように"ついたメソッドを好んでお勧めします。なぜ

protected void Page_Load(object sender, EventArgs e) 

オーバー

protected override void OnLoad(EventArgs e) 

を好みますか?シンプル:

protected override void OnLoad(EventArgs e) 
{ 
    base.OnLoad(e); 
    // your stuff 
} 

か::

protected override void OnLoad(EventArgs e) 
{ 
    // your stuff 
    base.OnLoad(e); 
} 

かさえ:

protected override void OnLoad(EventArgs e) 
{ 
    // some of your stuff 
    base.OnLoad(e); 
    // the rest of your stuff 
} 

かさえ:オーバーライドされたメソッドでは、あなたがあれば、いつ基本メソッドが呼び出されます自分自身を指定することができます

protected override void OnLoad(EventArgs e) 
{ 
    // your stuff 
    // not call the base.OnLoad at all 
} 

あなたは持っていませんPage_Load()バージョンの柔軟性。

マルク・

2

私は間違いなくあなたがこれを読んで推薦:あなたはasp.netに新しいしている場合は、いくつかのトラブルそのすべてを取得する必要があります

http://www.west-wind.com/presentations/howaspnetworks/howaspnetworks.asp

、本当に、I msドキュメントやms従業員のブログからのトピックに関する詳細な文書はまだ見つかっていません。

私はそれを難し​​いやり方で行い、逆アセンブルされたコードを使用することができるあらゆる経路をたどってきましたが、その男は本当に時間をかけて書きました。

+0

クールな読み物で時間の価値があります。 +1しかし、それは私が学ぶことに興味がある点のちょうど下に止まります(それは*低レベルです) – BCS

+0

申し訳ありませんBCS、あなたはそれについて絶対に正しいです。 – user134706

-1

基本的にはPage_Loadで試してください。うまくいかない場合は、Page_InitまたはPage_Renderのいずれかで試してみてください。通常はそれらの1つが機能します:)それは科学的アプローチです。

+0

私に投票した人に - それは冗談であることを意味していました。 –

+1

そして、冗談として答えの一番上にあってはいけません。 – BCS

関連する問題