我有這個端點
[HttpPost]
public async Task<IActionResult> Save(myViewModel viewModel)
{
....
}
我傳入的視圖模型包含一個串列
public class MyViewModel
{
public List<Records> Records {get;set;}
}
public class Record
{
public Guid RecordId{ get; set; }
public String Name{ get; set; }
}
當我通過cshtml表單將其傳遞給我的操作時,串列的計數顯示為:
count = 0
盡管知道至少存在 1 條記錄,但我將其傳遞如下:
<form>
<div class="modal-footer">
@foreach(var rec in Model.Records)
{
<input type="hidden" name = "Records" value="@rec" asp-for="Records" />
}
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary" id="confirm">Confirm</button>
</div>
</form>
uj5u.com熱心網友回復:
對串列元素使用索引來為系結正常作業準備背景關系:
@model MyViewModel
<form asp-action="Save" method="post">
<div>
@for(int i=0; i < Model.Records.Count; i )
{
<input type="hidden" asp-for="@Model.Records[i].Name" />
<input type="hidden" asp-for="@Model.Records[i].RecordId" />
}
<button class="button" type="submit">Save</button>
</div>
</form>
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/526726.html
