【发布时间】:2010-02-09 15:51:28
【问题描述】:
我正在开发一个由非营利组织共享的博客应用程序。我希望每个组织都能够更改自己的博客设置。我采用了单例模式(来自 BlogEngine.net)并对其进行了修改。 (我知道它不再是单例模式。)我已经测试过这种方法,它似乎在开发环境中运行良好。这种模式是一个好习惯吗?将其置于生产环境中时是否会出现问题?
public class UserBlogSettings
{
private UserBlogSettings()
{
Load();
}
public static UserBlogSettings Instance
{
get
{
string cacheKey = "UserBlogSettings-" + HttpContext.Current.Session["userOrgName"].ToString();
object cacheItem = HttpRuntime.Cache[cacheKey] as UserBlogSettings;
if (cacheItem == null)
{
cacheItem = new UserBlogSettings();
HttpRuntime.Cache.Insert(cacheKey, cacheItem, null, DateTime.Now.AddMinutes(1),
Cache.NoSlidingExpiration);
}
return (UserBlogSettings) cacheItem;
}
}
}
(为简洁起见,省略了部分代码。)
感谢您的任何帮助、评论等。
【问题讨论】:
标签: c# asp.net design-patterns