У меня есть действие
public ActionResult Index(string search)
{
var listingModel = Repository.Search(search); //gets from DB items. Model doesn't include 'serach' string as property or field
return View("Index", listingModel)
}
Представление содержит область фильтра с текстовым полем (этот код из метода расширения для помощника):
htmlHelper.TextBox("Search", null, htmlAttributesDictionary);
Я заметил, что он автоматически вставляет значение параметра 'search' в текстовое поле. Но моя проблема в том, что я не могу найти, как это получается. Я не вижу исходный код помощника .TextBox (). Я не могу найти это значение в htmlHelper.ViewData.Model. Я хочу изменить значение параметра поиска (мне нужно сохранить это Session и получает из сессии). Знаете ли вы, что я могу написать в действии контроллера, которое автоматически установит мое значение из сеанса в флажок.
Я знаю, что могу просто использовать перенаправление, но это не совсем правильно. Это выглядит для меня не очень красиво:
public ActionResult Index(string search)
{
search = GetFromSession();
return RedirectToAction("Index", new {search = search});
var listingModel = Repository.Search(search); //gets from DB items. Model doesn't include 'serach' string as property or field
return View("Index", listingModel)
}