2010-12-02 3 views
0

私はサイト全体の単一のdllに自分のWebサイトプロジェクトをプリコンパイルしました。私は、ページを実行して見てみると:なぜこのアセンブリは一時的なasp.net dllですか?

Assembly.GetAssembly(this.GetType()) 

それはとして解決されていますApp_Web_qgqyxtge

しかし、私は電話をかけるとき:

Assembly.GetExecutingAssembly() 

これはに解決します

アップロード、バージョン= 1.0.0.0、文化=ニュートラル、PublicKeyToken = null

私が見ているページのアセンブリが、現在のコードを実行していると思われるコンパイル済みdllではなく、一時asp.net dllのように見えるのはなぜか分かりません。

+0

私はそれほどコメントではなく、答えではありません...それはおそらくそれの方法のためですか? .aspxをコンパイルすると実行時にコンパイルされますか?あなたのプリコンパイルはサイトのすべての.csページであると仮定しますが、.aspxは実行時に一時的なdllにコンパイルされます。私はこのようなアセンブリを見ることで多くのことをしなかったので、私は確信が持てません。 – Chris

答えて

2

Webアプリケーションプロジェクトとは対照的にWebサイトプロジェクトを使用しており、App_Codeフォルダに保存されているすべてのクラスが自動的に一時アセンブリにコンパイルされるためです。

0

そのメッセージを印刷するときに、デバッグモードでページを実行していますか。 リリースとデバッグでは、コンパイルモデルが異なります。 あなたのページは "Upload.aspx"と呼ばれています。

関連する問題