簡體   English   中英

在asp.net應用程序結束頁面上查看計數數據未更新

[英]On asp.net application end page view count data in not updating

我有asp.net應用程序。 我強行結束此應用程序,並希望在此時間更新數據庫中的視圖頁面計數值。 如果有人知道請幫助我。 我也在global.asax文件中編寫了代碼

void Application_End(object sender, EventArgs e)
{
   // Code that runs on application shut`enter code here`down
}

但這在我強制結束應用程序時不起作用。

我認為這對您很重要,在退出時嘗試保存數據並不是一個好主意。

如果您仍然想嘗試並使用.NET Framework 4.5.1,則可以偵聽HostingEnvironment.StopListening事件,該事件在應用程序關閉待決時觸發:

void Application_Start(object sender, EventArgs e)
{
    HostingEnvironment.StopListening += (o, args) => SaveTheDataHere();
}

如果托管環境有序地關閉,則將保存數據,而不是突然崩潰。

不用說,如果服務器機房發生火災,BSOD停止操作系統,有人通過電源線跳閘等情況,則不會觸發。

更好的方法是將訪問事件(計數)立即或定期(取決於我可以接受的潛在數據丟失級別)轉移給具有一定容錯能力的外部流程,例如消息隊列。

我得到了答案,

void Application_End(object sender, EventArgs e)
{
   // Code that runs on application shut`enter code here`down
}

此事件僅在發生以下情況然后觸發時起作用。

  1. 更新web.config。

  2. 更新BIN中的dll文件。

  3. 停止或重新啟動IIS。

  4. 應用程序池回收。

因此,我為此實現了一個Web服務,以定期更新數據庫中的記錄。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM