我正在尝试从 Global.asax 文件自动在每个页面加载时设置一个变量。
我以为我可以这样做,Application_BeginRequest
但它似乎不起作用。
该变量是从数据库中设置的,基本上我正在快速调用数据库以检查我是否需要做其他事情。我现在不能详细介绍,但不能为此使用缓存。
所以,我尝试了很多想法,但没有成功,以下是我认为最合乎逻辑的两个:
1:设置变量Application_BeginRequest
Public Class Global_asax
Inherits System.Web.HttpApplication
Shared Property MyVar as String
Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs)
MyVar = CallToDatabase()
End Sub
End Class
2:在 Global.asax 文件的开头设置变量:
Public Class Global_asax
Inherits System.Web.HttpApplication
Shared Property MyVar as String = CallToDatabase()
End Class
在这两个中,这些是问题:
版本 (1) 似乎根本没有设置变量,当尝试访问时我得到一个空值。
版本 (2) 确实有效,但该值在页面加载时是静态的,这意味着如果我刷新或移动到另一个页面,即使我知道它应该已更改,该值仍保持不变。