大佬教程收集整理的这篇文章主要介绍了asp.net-mvc – TempData keep()vs peek(),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
> keep():在字典中标记指定的键以保留。
> peek():返回一个包含元素的对象
与指定键相关联,而不标记键
删除。
我不能得到真正的区别是什么,他们不保留另一个请求的值?
这意味着如果你把东西在TemPDAta喜欢
TemPDAta["value"] = "someValueForNextrequest";
而在另一个请求你访问它,值将在那里,但一旦你读它,该值将被标记为删除:
//second request,read value and is marked for deletion object value = TemPDAta["value"]; //third request,value is not there as it was deleted at the end of the second request TemPDAta["value"] == null
“偷看”和“保持”方法允许您读取值,而不标记删除。假设我们回到第一个请求,值被保存到TemPDAta。
使用“偷看”,您只需一次调用即可获得该值,而无需将其标记为删除,请参阅msdn:
//second request,PEEK value so it is not deleted at the end of the request object value = TemPDAta.Peek("value"); //third request,read value and mark it for deletion object value = TemPDAta["value"];
使用保留您指定要保留的标记为删除的密钥。检索对象以及稍后将其从删除中保存它们是2个不同的调用。见msdn
//second request,get value marking it from deletion object value = TemPDAta["value"]; //later on decide to keep it TemPDAta.Keep("value"); //third request,read value and mark it for deletion object value = TemPDAta["value"];
当您始终希望保留另一个请求的值时,可以使用Peek。使用保留时保留值取决于附加逻辑。
您有2个关于TemPDAta如何工作的好问题here和here
希望它帮助!
以上是大佬教程为你收集整理的asp.net-mvc – TempData keep()vs peek()全部内容,希望文章能够帮你解决asp.net-mvc – TempData keep()vs peek()所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。