我使用SqlDependency
爲實時ASP.NET應用程序。而且我用我的幾乎整個項目的一些JavaScript方法,我可以像ScriptManager的註冊:Scriptmanager註冊JavaScript不工作內部事件
ScriptManager.RegisterStartupScript(this, typeof(Page), new Random().Next(0, 9999999).ToString(), "alert('Some Text');", true);
這個作品無處不在期待類似的SqlDependency的onChange事件中:
SqlDependency dep = new SqlDependency(sqlCommand);
SqlDependency.Start("my_con_str");
dep.OnChange += new OnChangeEventHandler(dep_OnChange);
void dep_OnChange(object sender, SqlNotificationEventArgs e)
{
ScriptManager.RegisterStartupScript(this, typeof(Page), new Random().Next(0, 9999999).ToString(), "alert('TEST');", true);
}
上面的代碼沒有按」工作。但dep_OnChange
事件RegisterStartupScript
工作完美。通過該方式中的任何地方希望我試過的ScriptManager
和ClientScript
沒有什麼工作..
注幾乎整個註冊方法:我敢肯定它不是有關的SqlDependency這是關於事件像onChange ..
任何幫助,將不勝感激。 謝謝。
你的意思是sqldependency可以改變生命週期?而且我對SQLDependency很滿意,它顯示了整個on_change事件的變化,我不想改變它。沒有另一種解決方案嗎? –
ScriptManager只能在服務器正在處理頁面回發時使用。這是它唯一的場景。 SQL依賴關係並不關心ASP.NET,因此您必須輪詢客戶端JavaScript中的更改。 –
好,非常感謝。 –