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

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

ViewBag名稱是否與DropDownList中的Model屬性名稱相同?

ViewBag名稱是否與DropDownList中的Model屬性名稱相同?

ViewBag名稱是否與DropDownList中的Model屬性名稱相同?我正在開發(fā)一個(gè)ASP.NETMV-4 Web應(yīng)用程序。我在操作方法中定義以下內(nèi)容,以構(gòu)建一個(gè)SelectList:ViewBag.CustomerID = new SelectList(db.CustomerSyncs, "CustomerID", "Name");那我就把我的DropDownListFor如下所示View: @Html.DropDownListFor(model => model.CustomerID, (SelectList)ViewBag.CustomerID, "please select")如所示,我將命名為ViewBag屬性等于Model屬性名CustomerID..根據(jù)我自己的測(cè)試,定義相同的名稱不會(huì)導(dǎo)致任何問(wèn)題或沖突,但我應(yīng)該避免這種情況嗎?
查看完整描述

2 回答

?
繁華開滿天機(jī)

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

不應(yīng)對(duì)模型屬性和ViewBag屬性(理想情況下,您不應(yīng)該使用ViewBag,而是一個(gè)視圖模型,其中包含IEnumerable<SelectListItem>財(cái)產(chǎn))。

使用時(shí)@Html.DropDownListFor(m => m.CustomerId, ....)第一"Please Select"選項(xiàng)將始終被選中,即使模型屬性的值已被設(shè)置并與其中一個(gè)選項(xiàng)匹配。原因是該方法首先生成一個(gè)新的IEnumerable<SelectListItem>基于您提供的值,以便設(shè)置Selected財(cái)產(chǎn)。,以便設(shè)置Selected屬性,它讀取CustomerID從…ViewData,第一個(gè)發(fā)現(xiàn)的是"IEnumerable<SelectListItem>"(不是模型屬性的值),并且不能將該字符串與任何選項(xiàng)相匹配,因此選擇了第一個(gè)選項(xiàng)(因?yàn)槟承〇|西必須是)。

使用時(shí)@Html.DropDownList("CustomerId", ....),不data-val-*屬性將被生成,您將不會(huì)得到任何客戶端驗(yàn)證。

參考這個(gè)DotNetFiddle顯示可能用例的比較。僅通過(guò)對(duì)模型屬性和ViewBag屬性是否都能正常工作。


查看完整回答
反對(duì) 回復(fù) 2019-06-13
?
至尊寶的傳說(shuō)

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

使用它沒(méi)有壞處。你不會(huì)有任何錯(cuò)誤的。但最佳實(shí)踐是綁定模型屬性。


查看完整回答
反對(duì) 回復(fù) 2019-06-13
  • 2 回答
  • 0 關(guān)注
  • 406 瀏覽

添加回答

舉報(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)