После публикации я получаю Список в модели null У моей модели есть свойство, которое является списком vwLog.Отправка формы в модели MVC 5 имеет значение null в контрольном сообщении метода
public class CreateLogViewModel
{
public List<vwLog> LogData;
}
В связи я использовал эту модель и использовал цикл по каждому элементу присвоить значение в текстовом элементе управления
@model CreateLogViewModel
@using (Html.BeginForm("CreateLog", "Log", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
{
foreach (var item in Model.LogData)
{
<table>
<tr>
<td>
@Html.HiddenFor(modelItem => item.LogID)
@Html.TextBoxFor(modelItem => item.AgencyBillingCode)
</td>
<td>
@Html.TextBoxFor(modelItem => item.LicenseNumber)
</td>
</tr>
</table>
}
<div class="col-xs-12" align="center">
<input class="btn btn-default" type="submit" name="Submit" value="Save" id="Submit">
</div>
}
Моего контроллер
В Получе я задаю значение в объекте LogData, который представляет собой коллекцию vwlog.
public ActionResult CreateLog(CreateLogViewModel model)
{
model.LogData = GetDate();
return View(model);
}
обновляет некоторое значение списка на экране и попытаться спасти, но я получаю model.LogData нуль в посте.
[HttpPost]
public ActionResult CreateLog(CreateLogViewModel model, string submit)
{
if (model.LogData != null)
{
do this...
}
}
обновляет некоторое значение списка на экране и попытаться спасти, но я получаю model.LogData нуль в посте. модель не является нулевой, но объект коллекции равен null. Пожалуйста, дайте мне знать, где я ошибаюсь.
Не относится к вопросу, но из соображений безопасности я предлагаю использовать сильные @ Html.AntiForgeryToken() в целях и аутентификации маркеров в контроллере с [ValidateAntiForgeryToken()] – Chad
Вы не можете использовать 'foreach' петли (см обман), и ваша модель должна содержать свойства, а не поля, как указано NightOwl888. –