2012-02-27 21 views
-1

可能性の重複:
What is the 'page lifecycle' of an ASP.NET WebForm?aspxページはどのように実行されますか?

私は.NETの実行プロセス上の記事の多くを研究しています。私が見つけたのは

言語コード(C#、vb、j#など)---->言語コンパイラ---> MSILコード-----> このMSILコードはジャストインで処理されていますCLRの中にある時間

このプロセスは、クラスライブラリの実行やWindowsアプリケーションやコンソールアプリケーションでは問題ありませんが、asp.netでは.aspxページ+コードの背後にある(C#、VBなど)...その場合、この実行プロセスはどのように行われますか?

+0

[faq] - 「*あなたの質問は合理的なスコープでなければなりませんあなたの質問に答える本全体を想像できればあなたはあまりにも多くを求めています*このサイトに適しています。このトピックについて学ぶための書籍/記事/リソースがたくさんあります。もちろん、それだけで私のオニオンです。 – jadarnel27

答えて

3

ASP.NETは、あなたのASPXと、このようなファイルのコードビハインドを処理します:コード-DOMにディスク

  • 解析ASPXコードから

    1. ロードASPXこと
    2. ディスク上のC#ファイルにコードを保存します。
    3. このコードをアセンブリにコンパイルするには、csc.exeを使用します。あなたの/ binフォルダ内のすべてが参考になります。
    4. アセンブリをロードします。
    5. すべてのビンアセンブリをロードします。
    6. 新しくコンパイルされたアセンブリ内でレンダリングコードを呼び出します。これは、JITingと実行の通常のプロセスを開始します。
  • +1

    aspxページを処理するコンパイラがなければならないと思いますが、aspxとcシャープコードの両方がcsc.exeに向いています... –

    +0

    私は答えを改善しました。私はそれが助けて欲しい – usr

    +2

    彼はここで明確にしています - ASPXファイルは、コードの背後にあるコードと共にC#に変換されます(どちらも2つの部分クラスが1つの完全なクラスを形成しています)。次にコンパイラを使用してILコードを作成します。 –

    0

    それはおそらくここでは詳細に行くには少しあまりにも多くのですが、あなたはASP.Netページのライフサイクルを調べることになるでしょう:コメンターが提案するよう

    http://msdn.microsoft.com/en-us/library/ms178472.aspx

    追加情報:実際の前 IISはページとそのコードの両方でコードをコンパイルするか、コンパイルキャッシュからコンパイルされたコードを取得します(ASP.Netの動的コンパイル)。詳細:

    http://msdn.microsoft.com/en-us/library/ms366723.aspx

    +0

    ページのライフサイクルはコンパイルのライフサイクルではありません。 – usr

    +0

    @dirk - usrは正しいです...これは私の質問の答えではありません –

    +0

    コンパイルのライフサイクルが見つかりました[ここ](http://msdn.microsoft.com/en-us/library/ms178473.aspx)(その名前が記されたセクションにあります)。 –

    関連する問題