我想添加SqlCacheDependency到我的應用程序。 所以我決定創建littel tesp項目並面對困難。 我使用MSSQL 2008.我創建新的數據庫與錶行,並添加了幾行。 我執行:SqlCacheDependency不起作用
ALTER DATABASE ForTest SET ENABLE_BROKER
在managmeng工作室。
ASPX頁面:
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Cache["Lines"] == null)
{
string connectionString =
WebConfigurationManager.ConnectionStrings["ForTest"].ConnectionString;
SqlConnection con = new SqlConnection(connectionString);
string query = "SELECT dbo.Lines.Id, dbo.Lines.Value FROM dbo.Lines";
SqlCommand cmd = new SqlCommand(query, con);
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
adapter.Fill(ds, "Lines");
SqlCacheDependency empDependency = new SqlCacheDependency(cmd);
Cache.Insert("Lines", ds, empDependency);
}
}
}
protected void btnResult_OnClick(object sender, EventArgs e)
{
var result = Cache["Lines"];
}
}
我運行這個頁面,並添加行緩存,然後我在同治工作室添加行,當我點擊按鈕,我希望 高速緩存將被改變,但緩存仍舊。 我無法找到我做什麼錯:(你能不能給我一些暗示我該如何解決這個問題
感謝
更新: 我僞造者說,在global.aspx我運行:
SqlDependency.Start(
WebConfigurationManager.ConnectionStrings["ForTest"].ConnectionString
);