ASP.NET/MONO MVC2 应用标准 ASP.NET Web 缓存用于加速数据库访问:
string GetName() {
// todo: dedect if data has changed and invalidate cache
var name = (string)HttpContext.Current.Cache["Name"];
if (name!=null)
return name;
name = db.Query("SELECT name from mydata");
HttpContext.Current.Cache.Insert("Name", name);
return name;
}
mydata 可以被其他应用程序更改。在这种情况下,此方法返回错误数据。在这种情况下,如何检测数据是否更改并从 PostgreSql 数据库返回新数据?
如果 mydata 已更改,则可以清除整个 Web 缓存。