亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Asp .net Core:如何在 Razor Pages 的部分視圖中使用模型?

Asp .net Core:如何在 Razor Pages 的部分視圖中使用模型?

C#
繁星coding 2023-07-22 16:10:56
無法將部分視圖與模型一起使用。我創建了一個名為的新 WebApplicationWebApplication1我創建了一個TestPartialView在共享文件夾內命名的部分視圖。在該TestPartialView.cshtml.cs文件中,我創建了一個名為的方法GetMyString(),該方法返回一個字符串。我正在文件@Model.GetMyString()內部使用TestPartialView.cshtml。<partial name="TestPartialView" />我已在_Layout頁面下方包含標簽<partial name="_CookieConsentPartial" />當我構建時沒有錯誤。但是當我運行它時,它給出了一個錯誤:InvalidOperationException:傳遞到 ViewDataDictionary 的模型項的類型為“WebApplication1.Pages.IndexModel”,但此 ViewDataDictionary 實例需要類型為“WebApplication1.Pages.Shared.TestPartialViewModel”的模型項。”
查看完整描述

2 回答

?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

您的分部視圖需要 TestPartialViewModel 類型的模型,但在從 _layout.cshtml 引用分部視圖時沒有指定,因此頁面默認將父 ViewModel 發送到您的分部視圖,這會導致您遇到的錯誤。

修理

只需從 _layout.cshtml 引用您的部分視圖,并傳遞預期模型,如下所示

@await Html.PartialAsync("~/Views/Shared/PartialViews/TestPartialView.cshtml", 
              new TestPartialViewModel())


查看完整回答
反對 回復 2023-07-22
?
慕標琳琳

TA貢獻1830條經驗 獲得超9個贊

看來您已嘗試構建一個 NewRazor Page來用作新的部分視圖。

分部視圖沒有關聯的PageModel類 (?.cshtml.cs)。部分視圖只是在 Razor 標記 ( ) 中創建的視圖.cshtml。

請參考這個例子:強類型部分。它簡潔地顯示了Razor Page將數據作為模型傳遞給partial view渲染。


查看完整回答
反對 回復 2023-07-22
  • 2 回答
  • 0 關注
  • 176 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號