缓存以下内容的最佳方法是什么?我正在创建一个 Intranet Web 应用程序模板,它将在我的母版页标题顶部附近显示消息,例如 Good Morning, Justin Satyr!。显然,我必须确定是显示Morning、Afternoon 还是Evening。为清楚起见,我的代码如下:
string partOfDay;
var hours = DateTime.Now.Hour;
if (hours > 16)
{
partOfDay = "evening";
}
else if (hours > 11)
{
partOfDay = "afternoon";
}
else
{
partOfDay = "morning";
}
我不想在每次加载页面时重新确定它,因为这看起来有点多余,而且我必须轮询 SQL 服务器以检索用户的全名。缓存此信息的最佳方法是什么?如果我在整个 session 期间缓存它,那么如果用户在上午 11:00 开始使用该应用程序并在下午 3:00 结束,它仍然会说早上好。
最好的办法是重新确定每个页面加载的 M/A/E 词并缓存 session 的人的全名吗?或者有更好的方法吗?
最佳答案
我只会将用户名保留在 Session 对象中,老实说,其余的不值得缓存和检查它是否过时等,只需在每个页面上重新运行它——前提是你将实现放入一个通用的库/类,这样您就可以保持代码干爽。
关于c# - 缓存时间描述的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5491179/