У меня есть страница редактирования, которая редактирует объект. Этот объект имеет вложенный список другого объекта.
EditModel:
public class EditModel : BasePageModel
{
[BindProperty]
public Update.Command Command { get; set; }
public async Task<IActionResult> OnGetAsync(Update.Query query)
{
Command = await Mediator.Send(query);
return Page();
}
public async Task<IActionResult> OnPostAsync()
{
await Mediator.Send(Command); // Command.ListA is null here. ???
return RedirectToPage("Index");
}
}
Edit.cs html:
<form method="post">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="form-group">
<label asp-for="Command.Id"></label>
<input asp-for="Command.Id" readonly class="form-control"/>
</div>
// other non relevant properties...
<table class="table">
<thead>
<tr>
<th>
<label asp-for="Command.ListA[0].Date"></label>
</th>
<th>
<label asp-for="Command.ListA[0].Value"></label>
</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model.Command.ListA)
{
<tr>
<td>
<input type="date" asp-for="@item.Date"/>
</td>
<td>
<input type="number" asp-for="@item.Value"/>
</td>
</tr>
}
</tbody>
</table>
<div class="form-group">
<input type="submit" value="Save" class="btn btn-primary"/>
</div>
Когда я отправить обратно с помощью кнопки отправки. Мой список А является нулевым. Может ли кто-нибудь помочь мне понять, почему моя команда не связывается?
Большое спасибо за вашу помощь!