آموزش استفاده از TempData در ASP.NET MVC
در این مقاله با مثال توضیح خواهیم داد که چگونه میتوان TempData در ASP.Net MVC کرد.
TempData از کلاس TempDataDictionary مشتق شده است و اساسا شیء Dictionary است که برای انتقال اطلاعات از Controller به View یا از Controller به Controller استفاده می شود.
TempData
1- نوع خاصی از دیكشنری است كه از TempDataDictionary مشتق شده است.
2- مدت عمر كوتاهی دارد و برای ارسال اطلاعات بین صفحات (در redirect) قابل استفاده است.
3-وقتی viewها به صورت كامل اجرا شود، مقادیر آن null میشود.
4- به دلایل امنیتی باید قبل از استفاده، null بودن آن تست شود.
5-برای بهره برداری باید cast صورت پذیرد.
در مثال زیر، مقدار رشته ای در شی TempData در Controller تنظیم شده و به Controller دیگری هدایت می شود و در نهایت نمایش داده می شود.
Controller اول
public class FirstController : Controller
{
// GET: First
public ActionResult Index()
{
TempData["Message"] = "به سایت استور پراجكت خوش آمدید";
return new RedirectResult(@"~\Second\");
}
}
Controller دوم
public class SecondController : Controller
{
// GET: Second
public ActionResult Index()
{
return View();
}
}
View كنترلر دوم
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
</head>
<body>
<div>
@TempData["Message"];
</div>
</body>
</html>