第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

TempData keep()與peek()

TempData keep()與peek()

一只名叫tom的貓 2019-11-26 14:34:01
keep()和peek()有什么區(qū)別?MSDN說(shuō):保持(): marks the specified key in the dictionary for retention.窺視(): returns an object that contains the element that is associated with the specified key, without marking the key for deletion.我不能真正知道有什么區(qū)別,難道它們都為另一個(gè)請(qǐng)求保留了價(jià)值嗎?
查看完整描述

3 回答

?
PIPIONE

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超9個(gè)贊

TempDataDictionary讀取中的對(duì)象時(shí),該對(duì)象將在該請(qǐng)求結(jié)束時(shí)標(biāo)記為刪除。


這意味著如果您在TempData上放一些東西


TempData["value"] = "someValueForNextRequest";

并且在您訪問(wèn)它的另一個(gè)請(qǐng)求中,該值將存在,但是一旦您讀取它,該值將被標(biāo)記為刪除:


//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

該P(yáng)eek和Keep方法,使您無(wú)需將其標(biāo)記為刪除讀取值。假設(shè)我們回到第一個(gè)將值保存到TempData的請(qǐng)求。


有了Peek該值,而沒(méi)有通過(guò)一次調(diào)用將其標(biāo)記為刪除,請(qǐng)參見(jiàn)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"];

用Keep您指定要保留的標(biāo)記為刪除的密鑰。檢索對(duì)象并隨后保存以將其刪除,這是兩個(gè)不同的調(diào)用。參見(jiàn)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在始終希望保留其他請(qǐng)求的值時(shí)使用。Keep保留值時(shí)使用取決于其他邏輯。


關(guān)于TempData 在這里和這里的工作方式,您有兩個(gè)很好的問(wèn)題


希望能幫助到你!


查看完整回答
反對(duì) 回復(fù) 2019-11-26
?
qq_花開(kāi)花謝_0

TA貢獻(xiàn)1835條經(jīng)驗(yàn) 獲得超7個(gè)贊

TempData還是一個(gè)字典對(duì)象,在HTTP請(qǐng)求期間一直存在。因此,TempData可用于維護(hù)一個(gè)控制器動(dòng)作與另一控制器動(dòng)作之間的數(shù)據(jù)。

TempData每次用于檢查空值。TempData包含兩個(gè)方法keep()和peek(),用于維護(hù)從一個(gè)控制器動(dòng)作到其他控制器動(dòng)作的數(shù)據(jù)狀態(tài)。

當(dāng) TempDataDictionary 對(duì)象被讀取時(shí),在請(qǐng)求的標(biāo)記的結(jié)束作為刪除到當(dāng)前讀取對(duì)象。

保持()PEEK()方法用于無(wú)缺失讀取數(shù)據(jù)中的當(dāng)前讀取的對(duì)象。

當(dāng)您始終想保留/阻止其他請(qǐng)求的值時(shí),可以使用Peek()。當(dāng)阻止/保持該值取決于其他邏輯時(shí),可以使用Keep()。

TempData.Peek()和TempData.Keep()中的重載如下所示。

TempData.Keep()有2個(gè)重載方法。

  1. void keep():威脅所有在當(dāng)前請(qǐng)求完成時(shí)未刪除的數(shù)據(jù)。

  2. void keep(字符串鍵):借助名稱將特定項(xiàng)保留在TempData中。

TempData.Peek()沒(méi)有重載方法。

  1. object peek(字符串鍵):返回一個(gè)對(duì)象,其中包含具有特定鍵的項(xiàng)目,而不需要?jiǎng)h除鍵。

下面給出了TempData.Keep()和TempData.Peek()方法的返回類(lèi)型的示例。

public void Keep(字符串鍵){_retainedKeys.Add(key); }

公共對(duì)象Peek(字符串鍵){對(duì)象值=值;返回值 }


查看完整回答
反對(duì) 回復(fù) 2019-11-26
  • 3 回答
  • 0 關(guān)注
  • 828 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)