Как получить доступ к родительскому элементу управления представлениями из частичного представления в MVC 4
Всем Привет,
Я занимаюсь разработкой приложения MVC4 с Поиск, разбиение на страницы и сортировку с использованием AJAX &амп; частичный вид. Параметры поиска помещаются в родительское представление (Index.cshtml), а соответствующие записи отображаются в частичном представлении (_PartialView.cshtml) при нажатии кнопки поиска.
Когда я удаляю любую запись из сетки, я хочу перезагрузить частичное представление. Я уже сделал это, используя метод returning PartialView from Delete action. Но если выбран какой-либо параметр поиска, как я могу получить доступ к этому значению в методе действия удаления?
Моя ссылка на удаление в _PartialView.cshtml
@Ajax.ActionLink("Delete", "Delete", new { SrNo = item.SrNo }, new AjaxOptions { HttpMethod = "POST", Confirm = "Are you sure you want to delete record with SrNo : " + item.SrNo + "?", UpdateTargetId = "divData" })
В HomeController. cs
[HttpPost] public ActionResult Delete(int SrNo) { List<UploadData> allUploadData; . . . return PartialView("_PartialView", allUploadData.ToPagedList(1, 100, TotalRecordsCount)); }
Пожалуйста, предложите правильное решение.
Что я уже пробовал:
Я пробовал использовать ViewBag, ViewData и TempData. В индексном представлении я сохранил все параметры поиска в объектах ViewBag, но в представлении Partail все эти объекты ViewBag показывают нулевые значения.
Umesh AP
Мне удалось достичь той же функциональности с помощью TempData следующим образом :
Всякий раз, когда нажимается кнопка поиска, я сохраняю параметры поиска в переменных TempData как
TempData["srchByUserName"] = searchByUserName; TempData["srchByUploadDate"] = searchByUploadDate; TempData["currentPageIndex"] = currentPageIndex;
В действие "удалить", после прочтения этих значений использовать сохранить() метод, чтобы сохранить ценности, как :
TempData.Keep("srchByUserName"); TempData.Keep("srchByUploadDate"); TempData.Keep("currentPageIndex");
Но следующая проблема заключается в том, что всякий раз, когда я удаляю записи не с 1-й страницы, я перенаправляю их на 1-ю страницу.
Я хочу, чтобы после удаления записи со 2-й страницы обновилась только 2-я страница.