Приведение коллекции объектов из TempData (MVC C#)
Я пытаюсь поместить свою коллекцию объектов в TempData следующим образом:
[HttpPost]
public ActionResult PandoraRemovalTotal2(List<Business.Models.Administration.CorrespondenceRecordViewModel> model, string hdnMem)
{
Business.Administration.Pandora Pandora = new Business.Administration.Pandora();
model = Pandora.DeleteDocs(model);
TempData["model"] = model.Where(m => m.DeleteRow == true);
return RedirectToAction("PandoraDocsDeleted", new {memNum = hdnMem });
}
И передать его через перенаправление к действию
[HttpGet]
public ActionResult PandoraDocsDeleted(string memNum)
{
var model = (List<Business.Models.Administration.CorrespondenceRecordViewModel>)TempData["model"];
ViewBag.MemNum = memNum;
return View(model);
}
Но когда я делаю это:
var model = (List<Business.Models.Administration.CorrespondenceRecordViewModel>)TempData["model"];
это ноль. Как мне это разыграть?
1 ответ
Решение
Вместо
TempData["model"] = model.Where(m => m.DeleteRow == true);
использование
TempData["model"] = model.Where(m => m.DeleteRow == true).ToList();
В противном случае вы сохраняете определение для IEnumerable<> без каких-либо данных.