استفاده از TempData ، Peek و Keep در MVC

شنبه 29 اسفند 1394

در این مقاله شما را با TempData آشنا میکنیم همچنین در این مقاله قصد داریم با TempData از Peek و Keep در MVC استفاده کنیم.برای درک بهتر شما از مطالب ، کدهای مربوطه نیز در این مقاله درج شده است.

استفاده از TempData ، Peek و Keep در MVC

دستور زیر را در HomeController وارد کنید :

TempData["TempModel"] = "This is TempData Example";

در اولین فراخوانی ما مقدار را واکشی نمیکنیم بنابراین TempData["TempModel"]  مقدار را نگه میدارد. در عکس زیر به صفحه watch دقت کنید در اینجا مقدار مورد نظر ما که در Controller تنظیم شده است نگه داری میشود.

 

حالا میخواهیم مقدار TempData  از View بخوانیم و مقدار آن را مورد بررسی قرار دهیم.

این مقدار null خواهد شد زیرا شما مقدار آن را قبلا خوانده اید.

اکنون یک TempData["TempModelKeep"] دیگر تعریف میکنیم ، در این قسمت ابتدا اطلاعات را میخوانیم و مقدار آنرا برای درخواست نگه میداریم. بنابراین برای مقدار دهی از TempData استفاده میکنیم. متد را به صورت زیر بنویسید.

مقدار TempData["TempModel"] ، null شد اما TempData["TempModelKeep"] مقدار مورد نظر را برای درخواست بعدی در خود نگه میدارد.

حالا بیایید از متد Peek در View استفاده کنیم.برای این کار یک متغیر String تعریف میکنیم و  مقدار TempData  را با نوشتن کد زیر در آن ذخیره میکنیم.

1.	@{  
2.	    string msg = TempData.Peek("TempModel").ToString();  
3.	}  
4.	@msg  

برنامه را اجرا کنید و مقدار مربوط TempData["TempModel"] را بررسی میکنیم.

اگر شما مقدار TempData با استفاده از Peek بخوانید اطلاعات برای درخواستهای بعدی نیز در دسترس خواهد بود.

مروری بر مطالب گفته شده :

_ اگر شما  TempData  را مقداردهی کنید و مقدار آن را نخوانید اطلاعات مربوط به آن برای درخواستهای بعدی در دسترس خواهد بود.

_ اگر شما  TempData  را مقداردهی کنید و مقدار آن را در View بخوانید اطلاعات مربوط به آن یا حذف خواهد شد یا null میشود.

_ اگر میخواهید که مقدار  TempData در اولین درخواست بخوانید و درخواستهای بعدی نیز به ان دسترسی داشته باشید از متد "Keep" استفاده کنید.

_ اگر میخواهید که مقدار TempData را با استفاده از “Peek” بخوانید مقدار اطلاعات در خواستهای بعدی نیز دردسترس خواهد بود.

 

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید