2009-06-23 5 views
2

私はApp-Codeフォルダがどのように動作するかをもっとよく理解しようとしています。特に、App-Codeフォルダ内の新しいクラスが現在のAppDomainにどのように含まれているのか不思議です。 2番目の一時的なAppDomainは、CodeDomで新しいオブジェクトをコンパイルするのと同じ方法で作成されますか?ASP.NetのApp_Codeは、セカンダリtemp AppDomainに新しいコードをコンパイルしますか?

新しいクラス/オブジェクトをWebアプリケーションに移動する機能は、多くの点で非常に魅力的です。 Rob ConneryのMVC Storefrontは良い例です。 App-codeフォルダを使用して新しい機能を導入したことがあれば、トレードオフや問題を考慮する必要がありますか?

UPDATE:

私はこの興味深い経過とともにarticle in CoDe Magazineが見つかりました:あなたのアプリケーション固有のコードは、ASPXページまたはコントロールの インラインで行くことができます

、それ は部分的 CodeBesideに行くことができますまたは 自律クラスを完全に作成するには、APP_CODE フォルダーに作成します。 APP_CODEフォルダは、ASP.NET 2.0 プロジェクトの 特殊フォルダであり、 Webプロジェクトの非ページまたは コントロール関連のソースコードは、このフォルダに移動する必要があります。 ASP.NETは、APP_CODE のコンテンツをライブラリプロジェクトのように扱い、 のコンテンツを別のアセンブリにコンパイルします。 このアセンブリは、ASP.NETが から作成したページまたはディレクトリレベルの アセンブリのすべてで、 のいずれかを使用するASP_COPEのいずれかを使用して参照されます。

私の質問はまだありません - このライブラリをサポートする2番目のAppDomainが作成されていますが、パフォーマンスに与える影響は最小限ですか?

答えて

2

詳細はわかりませんが、確かに異なるダイナミックアセンブリになります。クラスは別のAppDomainに存在することはできません。クラスのインスタンスのみが別のAppDomainに存在することができます。次に、別のAppDomainから(リモートを介してのみ)アクセスするのは面倒です

関連する問題