我应该如何创建从数据库中读取设置的应用程序范围的实用程序/管理器类? 我应该使用静态类,例如
public static class ThemeHelper
{
private static string themeDirectory { get; private set; }
static ThemeHelper()
{
// read from the database
themeDirectory = "blue-theme";
}
public static string ResolveViewPath(string viewName)
{
string path = string.Format("~/themes/{0}/{1}.aspx", themeDirectory, viewName);
// check if file exists...
// if not, use default
return path;
}
}
或普通类的静态实例,例如存储在HttpApplicationState中? 或者我应该使用依赖注入库(如Ninject)?
答案 0 :(得分:0)
静态类和方法适用于这种情况。但请注意静态变量 - 它们的值将在同一Web应用程序的所有客户端之间共享。
如果您希望缓存结果但区分客户端(会话),则可以将其删除到Session集合。