Reputation: 363
How would you pass the model from an (GetDate) action to another (ProcessP) action via RedirectAction method?
Here's the source code:
[HttpPost]
public ActionResult GetDate(FormCollection values, DateParameter newDateParameter)
{
if (ModelState.IsValid)
{
return RedirectToAction("ProcessP");
}
else
{
return View(newDateParameter);
}
}
public ActionResult ProcessP()
{
//Access the model from GetDate here??
var model = (from p in _db.blah
orderby p.CreateDate descending
select p).Take(10);
return View(model);
}
Upvotes: 5
Views: 9778
Reputation: 8393
If you need to pass data from one action to another one option is to utilize TempData. For example within GetDate you could add data to the session as follows:
TempData["Key"] = YourData
And then perform the redirect. Within ProcessP you can access the data utilizing the key you previously used:
var whatever = TempData["Key"];
For a decent read, I would recommend reading through this thread: ASP.NET MVC - TempData - Good or bad practice
Upvotes: 8