[英]Updating list of models on the database ASP.NET MVC 5
我有一個視圖顯示的模型列表。 說他們是任務列表。 列表上有一個檢查按鈕,可以在其中檢查任務是否完成。 我希望立即在數據庫上更新它們。 我該怎么做?
這是我的控制器的外觀:
public async Task<ActionResult> TaskManager(Tasks model, string id)
{
var user = await UserManager.FindByIdAsync(id);
var list = from task in context.Tasks.Where(t=> t.isAssigned == false)
select task;
foreach(var t in task)
{
t.isAssigned =(bool) // FROM EACH LIST ITEM IN THE VIEW ;
}
await context.SaveChangesAsync();
return View();
}
可以檢查任務是否完成的按鈕。 我希望立即在數據庫上更新它們。 我該怎么做?
你看錯地方了。 這不是通過執行“常規” MVC,而是通過使用Ajax。
用戶按下復選框,將對不返回HTML頁面但突出顯示200的Api方法(REST方法)進行回調-確定。 它獲取ID作為參數,並更新數據庫中的任務。 當值改變時,就在那兒。
基本上,如果您想對復選框的更改做出反應,則必須這樣做-然后刷新整個頁面效率不高且緩慢。 這就是為什么微軟在許多年前發明Ajax的原因(甚至在其他人提出這個詞之前)。 它得到了很好的支持。
這是您必須為我們中的某些人爭取一個並非完全甜美的蘋果並學習一些javascript / JQuery以便在瀏覽器中運行的時刻。 上周去過那里,這並不難;)
默認情況下,實體框架不支持批處理。 這樣做的可能性很小。 看到這個評論:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.