首頁 > web前端 > js教程 > 如何使用 Html.BeginCollectionItem 管理 ASP.NET MVC 部分視圖中的多個模型實例?

如何使用 Html.BeginCollectionItem 管理 ASP.NET MVC 部分視圖中的多個模型實例?

Patricia Arquette
發布: 2024-12-04 13:27:11
原創
829 人瀏覽過

How Can I Use Html.BeginCollectionItem to Manage Multiple Model Instances in ASP.NET MVC Partial Views?

使用Html.BeginCollectionItem 將集合傳遞給部分視圖

建立允許使用者新增模型的多個實例的表單時,通常需要為每個實例渲染部分視圖。 ASP.NET MVC 提供了 Html.BeginCollectionItem 幫助程式來促進此過程。

BeginCollectionItem 幫助程式建立一個表格行,其中包含模型目前實例的表單欄位。提交表單時,輸入到這些欄位中的資料將綁定到模型物件的相應屬性。

要使用 BeginCollectionItem,您必須先建立一個代表單一實例的表單欄位的分部視圖模型的。例如,請考慮以下名為_Recipient.cshtml 的部分視圖:

@model CashRecipientVM
<div>
登入後複製

此部分視圖定義了一個帶有兩個文字方塊(用於收件者和金額)和一個刪除按鈕的表單。 BeginCollectionItem 幫助器確保模型的每個實例都有自己的一組表單欄位。

在主視圖中,您可以使用 BeginCollectionItem 幫助器將這些部分視圖的集合新增至表單。例如:

@model IEnumerable<CashRecipientVM>
@using (Html.BeginForm())
{
    <div>
登入後複製

此程式碼建立一個包含 CashRecipientVM 物件清單的表單。 BeginCollectionItem 幫助器用於呈現清單中每個物件的部分視圖。

該表單包含一個「新增」按鈕,允許使用者新增模型的其他實例。當您按一下「新增」按鈕時,將向控制器發出 AJAX 請求以擷取另一個部分視圖。然後,檢索到的部分視圖將會新增到表單中。

提交表單時,輸入到表單欄位中的資料將綁定到 CashRecipientVM 物件的對應屬性。然後控制器可以處理這些物件並將它們保存到資料庫中。

以上是如何使用 Html.BeginCollectionItem 管理 ASP.NET MVC 部分視圖中的多個模型實例?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板