目前我在App_Code中有一个NotInheritable类,它包含一些需要访问应用程序的变量,但我不认为这是管理全局变量的好方法。
答案 0 :(得分:2)
通常,这种事情要求Singleton。但是,我建议不要自己编写单例,并使用依赖注入/ IoC框架来处理服务的生命周期。
ASP.NET必须记住的另一件事是,ASP.NET进程会不时地自动回收自身,因此您需要将更改保留到永久存储(例如文件系统或数据库) )
答案 1 :(得分:0)
您应该使用“应用程序设置”。只需转到Application属性窗口,选择设置选项卡并添加变量。比在代码上只使用强类型类。例如,如果我创建了一个名为 PortalName 的全局变量,我只需使用:Settings.Default.PortalName
答案 2 :(得分:0)
我相信Application对象是一种使用全局变量的内置方法,您可以根据需要在对象中存储各种值。
答案 3 :(得分:0)
作为Application状态的替代方法,请考虑将变量设为静态。它基本上是相同的,具有强类型的额外好处。
就个人而言,我会选择David建议并使用由IoC容器管理的单一作用域服务。