استفاده از TempData ، Peek و Keep در MVC
شنبه 29 اسفند 1394در این مقاله شما را با TempData آشنا میکنیم همچنین در این مقاله قصد داریم با 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” بخوانید مقدار اطلاعات در خواستهای بعدی نیز دردسترس خواهد بود.
- ASP.net MVC
- 2k بازدید
- 6 تشکر