在我在Windows Azure中托管的ASP.NET MVC3应用程序中,我想知道应用程序重新启动了多少次(以便我知道启动顺序是正确的)。所以我需要某种“变量”,我可以从Application_Start()
中“增量”,但它应该以某种持久的方式存储,否则它将无法在应用程序重新启动后继续存在。存储需要是每个应用程序的实例。每个ASP.NET应用程序实例是否都有一个持久存储?
当然,我可以使用系统注册表或一些临时文件,但我想应该有更好的东西。
有没有什么可以用于我的场景的ASP.NET基础结构?
如果您可以访问到文件系统,你可以在文本或XML文件中的AppData目录存储。如果您有权访问SQL Server,则还可以将其存储在那里。这看起来很简单,或者我错过了什么? –
@ErikPhilips:Yeap,这很简单,但代码非常多。我希望有一些像会话变量一样简单的东西。 – sharptooth
@ErikPhilips - 如果这是在云服务中运行的Web角色,本地存储是不够的,因为没有保证存储将继续存在。另外:即使您在每个实例上存储了*,您也只能通过连接到每个实例来收集这些数据。一旦你将*缩小到更少的实例,你就会失去宝贵的数据。请参阅Gaurav的回答,了解一个外部化,持久的存储解决方案。 –