我们可以在DotNet类库项目中使用global.asax文件吗

本文关键字:global asax 文件 项目 DotNet 类库 我们 | 更新日期: 2023-09-27 18:01:10

我们可以在.NET类库项目中使用Global.asax文件吗?因为我在任何地方都没有看到Global.asax文件只能用于基于Web的应用程序。

当应用程序启动时,Global.asax文件的代码正在由.net框架编写和调用。我想对我的类库使用类似的功能,即当我的类库加载到内存中时,将调用类库的Global.asax文件的Application_Start

我知道这可以使用静态构造函数来使用,但我想为此使用Global.asax

如有任何建议/意见,我们将不胜感激。。

感谢

我们可以在DotNet类库项目中使用global.asax文件吗

global.asax文件是ASP.NET应用程序的一个功能。它在DLL(类库项目(中不可用。

没有标准的方法(使用C#(在程序集加载时运行某些代码,即使CLR似乎具有这样的功能。看看这个问题,了解更多信息和想法。例如,一个答案提到了一个名为InjectModuleInitializer的工具,该工具作为生成后步骤运行,用于将模块初始值设定项方法注入.NET程序集中。

以下是介绍InjectModuleInitializer:的博客文章的简短摘录

CLR的一个在C#或VB.NET中不可用的功能是模块初始化程序(或模块构造函数(。模块初始值设定项是只是一个名为.ctor并标记为属性SpecialName和RTSpecialName。当模块(每个.NET程序集通常由一个或多个模块组成只有一个(是第一次加载的,并且保证运行在模块中的任何其他代码运行之前,在任何类型之前初始化器、静态构造函数或任何其他初始化代码。