使用 asp mvc 系統,我想執行某種用戶通知,將記錄添加到資料庫中。
當前范例... navPage -> modPage -> datagridPage -> newDatabasePage -> (record added action) 這是它停止的地方,用戶不會收到記錄添加或失敗的通知,它只是重新加載視圖。
當前 - 我在添加記錄后在 viewbag 變數中使用一些文本,并基于此值顯示一個簡單的 javascript 訊息框。但我認為有更好的方法。
認為通過 jquery 實作的模式彈出視窗可以完成這項任務,但我被告知這不是不使用訊息傳遞框架(signalR 等)的最佳解決方案。
另一種方法是使用額外的部分頁面 - 另一個部分頁面????
我在這里錯過的任何不同的選擇將不勝感激。
uj5u.com熱心網友回復:
您可以使用添加一些漂亮的通知sweetalert2,這里是檔案
uj5u.com熱心網友回復:
你在使用 Bootstrap(或類似的)嗎?
你不能只是將一些資訊傳遞到一個隱藏的默認警報 div 中嗎?
假設您正在使用 EF,當您保存一個物件時,您可以捕獲新的 Id,以便您可以檢查這一點。
不要重新加載視圖,而是重定向到創建初始視圖的操作并更改它,以便您可以傳入新的 Id:
int newId = _context.SaveChanges();
return RedirectToAction("GridView", new { Id = newId });
然后更改Action的簽名:
public async Task<ActionResult> GridView(int? Id)
然后,您可以檢查 Id 是否具有值并使用該資訊執行某些操作。然后只需將其添加到頁面的 ViewModel 并在需要時顯示警報:
if (Id.HasValue)
{
viewModel.displayAlert = true;
}
如果您不想完整地重新加載視圖,那么您可以使用 Ajax 呼叫完成同樣的事情。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/337264.html
標籤:asp.net-mvc
上一篇:無法為具有不同于xyz.com/api/webhooks/incoming/*的路由的asp.net通用webhooks設定URI
