ASP.NETはすべてのアセンブリをbinフォルダからAppDomainにロードしますか?ASP.NETは、すべてのアセンブリをビンからAppDomainにロードしますか?
なぜ私はインターフェイスの特定の実装を探していて、明示的にAssembly.Load(...)
なしで解決しているようだからです。
ASP.NETはすべてのアセンブリをbinフォルダからAppDomainにロードしますか?ASP.NETは、すべてのアセンブリをビンからAppDomainにロードしますか?
なぜ私はインターフェイスの特定の実装を探していて、明示的にAssembly.Load(...)
なしで解決しているようだからです。
参照されない限り(静的または動的に)読み込まれません。しかし、Binフォルダはプロービングパスの一部と見なされるので、アセンブリを読み込もうとします。
私はそれがSystem.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory()によってすべてロードされると思います。私はスタックトレースのプロファイリングにそれを取得しますが、それに関する多くのドキュメントを見つけることはできません。
フェローSO'ersはかかわらず、ここでそれを制御について説明しますHow to stop ASP.NET from loading all assemblies from bin on first load
私はそれがロードされたDLLの参照しているすべてのアセンブリをロードすると思います。ロードされたプロジェクトの1つが、見ているクラスを含むDLLを参照している必要があります。私はこれについて確信していません。 –
プロジェクトの直接参照はありません。 –
一時的なプロジェクト参照は、DLLがbinフォルダにあると仮定してもカウントされます。 A(あなたのアプリ)がCに依存するBに依存し、3つすべてがbinフォルダにあるように、Cは自動的にロードされます。 –