Ich versuche, besser zu verstehen, wie der App-Code-Ordner funktioniert, und insbesondere bin ich neugierig, wie neue Objekte, die eine neue Klasse im App-Code-Ordner sind in der aktuellen AppDomain enthalten. Wird eine zweite, temporäre AppDomain auf die gleiche Weise erstellt, wie wenn ich neue Objekte mit dem CodeDom kompiliere?
In vielerlei Hinsicht ist die Möglichkeit, neue Klassen/Objekte in eine Webanwendung zu verschieben, sehr überzeugend. Rob Connery's MVC Schaufenster ist eine gute Illustration. Wenn Sie den App-Code-Ordner für die Bereitstellung neuer Funktionen verwendet haben, gab es dabei irgendwelche Kompromisse oder Probleme, die Sie beachten sollten?
UPDATE:
Ich habe eine Artikel in der Zeitschrift CoDe mit dieser interessanten Passage:
Ihr anwendungsspezifischer Code kann der ASPX-Seite oder des ASPX-Steuerelements, er kann in eine partielle CodeBeside Klasse, oder Sie können komplett eigenständige Klassen im Ordner APP_CODE Ordner erstellen. Der APP_CODE-Ordner ist ein spezieller Ordner in einem ASP.NET 2.0 Projekt und jeder nicht seiten- oder steuerungsbezogener Quellcode in Ihrem Webprojekt muss in diesem Ordner abgelegt werden. ASP.NET behandelt den Inhalt von APP_CODE wie ein Bibliotheksprojekt und kompiliert den Inhalt in eine separate Assembly. Diese Assembly wird dann referenziert von alle Assemblies auf Seiten- oder Verzeichnisebene Assemblies, die ASP.NET aus Ihren ASPX/ASCX-Seiten erstellt, die eine der die in APP_CODE definierten Klassen verwenden.
Meine Frage steht noch - wird eine zweite AppDomain erstellt, die diese Bibliothek unterstützt, und wenn ja, sind die Auswirkungen auf die Leistung minimal?