【发布时间】:2010-10-13 03:30:07
【问题描述】:
好的,所以我尝试创建一个设置类来存储我需要在整个系统中访问的某些字符串。我用下面的代码创建了一个 globalSettings.cs:
public class GlobalSettings
{
private readonly Hashtable myHT;
public GlobalSettings()
{
//Hashtable used to store global strings
myHT = new Hashtable();
myHT.Add("logCategory","TMBC"); //event log category
myHT.Add("logSource", "MVC"); //event log source
//setup required options
//Create log source if required
if (!EventLog.SourceExists(myHT["logSource"].ToString()))
{
EventLog.CreateEventSource(myHT["logSource"].ToString(), myHT["logCategory"].ToString());
}
}
public string getSetting(string key)
{
return myHT.ContainsKey(key) ? myHT[key].ToString() : null;
}
}
目前我已经在我的每个控制器中使用以下内容初始化了这个类:
protected GlobalSettings globalSettings = new GlobalSettings();
**我应该将构造函数设置为私有并实现单例模式,因为它毕竟是一个设置类并且只需要一个实例吗?
我最好用其中的设置信息来扩展控制器类吗?
**
【问题讨论】:
标签: .net asp.net-mvc settings global