ASP.Net 中的 App_Code 是否会将新代码编译到辅助临时 AppDomain?

发布于 2024-07-25 02:07:42 字数 952 浏览 5 评论 0原文

我试图更好地了解 App-Code 文件夹的运行方式,特别是我很好奇 App-Code 文件夹中的新类的新对象如何包含在当前 AppDomain 中。 第二个临时 AppDomain 的创建方式是否与我使用 CodeDom 编译新对象时的方式相同?

在许多方面,将新类/对象移动到 Web 应用程序中的能力非常引人注目。 Rob Connery 的 MVC Storefront 就是一个很好的例子。 如果您使用应用程序代码文件夹来部署新功能,是否需要考虑任何权衡或陷阱?

更新:

我在 CoDe 杂志中找到了一篇 文章这段有趣的段落:

您的应用程序特定代码可以 ASPX 页面或控件的内联,它 可以进入 CodeBeside 部分 类,或者你可以完全创建 APP_CODE 中的自治类 文件夹。 APP_CODE 文件夹是 ASP.NET 2.0 中的特殊文件夹 项目和任何非页面或 与控件相关的源代码 Web 项目必须进入此文件夹。 ASP.NET 处理 APP_CODE 的内容 就像一个图书馆项目并编译 将内容放入单独的程序集中。 然后该程序集被引用 所有页面或目录级别 ASP.NET 创建的程序集 您的 ASPX/ASCX 页面使用任何 APP_CODE 中定义的类。

我的问题仍然存在 - 是否创建了第二个支持该库的 AppDomain,如果是,对性能的影响是否最小?

I am trying to better understand how the App-Code folder operates, and in particular I am curious how new objects that a new class in the App-Code folder are included in the current AppDomain. Is a second, temporary AppDomain created in the same manner as when I compile new objects with the CodeDom?

In many ways the capability of moving new classes / objects into a Web Application is very compelling. Rob Connery's MVC Storefront is a good illustration. If you have used the App-code folder to deploy new functionality were there any trade-offs or gotchas that should be considered?

UPDATE:

I found an article in CoDe Magazine with this interesting passage:

Your application-specific code can go
inline of the ASPX page or control, it
can go into a CodeBeside partial
class, or you can create completely
autonomous classes in the APP_CODE
folder. The APP_CODE folder is a
special folder in an ASP.NET 2.0
project and any non-page or
control-related source code in your
Web project must go into this folder.
ASP.NET treats the content of APP_CODE
like a library project and compiles
the content into a separate assembly.
This assembly is then referenced by
all of the page or directory-level
assemblies that ASP.NET creates from
your ASPX/ASCX pages that use any of
the classes defined in APP_CODE.

My question still stands - is a second AppDomain created that supports this libary, and if so are the impacts on performance minimal?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

南汐寒笙箫 2024-08-01 02:07:42

我不知道细节,但它肯定会在不同的动态程序集中。 一个类不能位于另一个 AppDomain 中。 只有类的实例才能在另一个AppDomain中,然后从另一个AppDomain访问确实很麻烦(只能通过remoting)

I don't know the details, but it will certainly be in different dynamic assemblies. A class can't be in another AppDomain. Only an instance of a class can be in another AppDomain, and then it's really a hassle to access from another AppDomain (only through remoting)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文