ASP.net集中变量
本文关键字:变量 集中 net ASP | 更新日期: 2023-09-27 18:29:03
我想把数据(比如ID)存储在一个集中的区域,我可以从任何类访问它,statics不会有帮助,因为它会被覆盖,我需要一些类似vb中的模块的东西(我不知道它是否真的对我有帮助)我如何在asp/C#中做到这一点?
您可以使用:
- ASP.NET缓存
- 会话状态
- 应用程序状态
- 数据库
由于不知道你想要集中什么(以及它的范围),我无法就选择什么选项提供建议。大多数情况下,往往使用会话状态。
通过选择而不是使用statics,您赢得了第一场战斗,由于应用程序池回收,它们在IIS上是不可预测的。
您可以将其存储在Session变量中,如;
Session["myParam"] = myobject;
您可以检索类似的值;
var temp = (MyClass) Session["myParam"];
如果您在web上下文中,则可以使用Application对象,因为它是所有类和页面的通用对象。
所以,将您的价值添加到应用程序中,然后在需要时从其他位置读取它。
如果定义了一个包含静态变量的静态类,也可以得到相同的行为。因此,请查看singletone设计模式,以获得该解决方案的更多细节
http://www.dofactory.com/Patterns/PatternSingleton.aspx