繁体   English   中英

SQL缓存依赖项问题

[英]SQL Cache dependency issue

我正在使用SqlCacheDependency将结果缓存在DataSet

在页面加载中调用了一个简单的代码

string conn= WebConfigurationManager.ConnectionStrings["NorthwindEntities"].ConnectionString; 
SqlConnection con = new SqlConnection(conn); 
string query = "SELECT EmployeeID, FirstName, LastName, City FROM dbo.Employees"; 
SqlCommand cmd = new SqlCommand(query, con); 
SqlDataAdapter dadapter= new SqlDataAdapter(cmd);

数据集用法:

DataSet ds = new DataSet(); 
dadapter.Fill(ds, "Employees"); 

并将其缓存为:

SqlCacheDependency empDependency = new SqlCacheDependency(cmd); 
Cache.Insert("Employees", ds, empDependency, DateTime.Now.AddMinutes(10),Cache.NoSlidingExpiration);

但是,我运行该页面,将数据加载到网格视图中,然后从SQLServer本身进行手动修改。 我重新加载页面,更改后的数据立即可见。

哪一行造成了问题,或者缺少什么?

在这里有问题。

SqlDependency通知系统未启动并正在运行。 通过正确设置Global.asax文件Application_Start方法,可以解决此问题。

protected void Application_Start()
 {
    string connString =   
    ConfigurationManager.ConnectionStrings["ProductionSystem"].ConnectionString;
    SqlDependency.Start(connString); // starting the listener service 
}

链接对我有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM