2016-07-26 2 views
-3

У меня есть ActionResult MyData(). В этом я имею ViewData ["test"], который дает мне логическое значение. Теперь, когда перенаправление на другой ActionResult MyData2(), это значение уничтожается. Я не могу использовать TempData из-за некоторых ограничений.Как получить значение ViewData из одного ActionResult в другой ActionResult

public ActionResult MyData() 
{ 
    ViewData["test"] = ??? // returns true value after some calculations.     
} 

public ActionResult MyData2() 
{ 
    ViewData["test"] //is coming null.         
} 
+0

использование 'Session [ "тест"]' ' –

+0

ViewData' для передачи данных между методом контроллера и его точки зрения (это не может использоваться для передачи данных между методами). Вы должны где-то сохранить данные. –

+0

Использование сеанса имеет свои собственные ограничения, если тысячи пользователей регистрируются в одно и то же время каждый раз, когда будет создан новый сеанс, который нужно убить или уничтожить. Я не хочу этого делать. Не могли бы вы помочь мне с лучшим подходом. – user3106445

ответ

1

Вы можете попробовать использовать RedirectToAction метод с параметрами:

public ActionResult MyData() 
{ 
    var data = true; 
    return RedirectToAction("MyData2", new { foo = data }); 
} 

public ActionResult MyData2(bool foo) 
{ 
    var data = foo; 
    return Content(data.ToString()); 
} 
Смежные вопросы