#html #c_sharp #aspnet_mvc #razor
Мне необходимо отобразить из БД в раскрывающий список ФИО, у которых столбец SubjectCode равен 1. Ege15VM.cs namespace WebApplication1.Models { public class Ege15VM { public IEnumerableParticipants { get; set; } public string Participant { get; set; } public Ege15VM() { cokoEntitiesWAN dataContext = new cokoEntitiesWAN(); Participants = from a in dataContext.ege_15_res_before where a.SubjectCode == 1 select new SelectListItem { Text = a.surname + " " + a.name, Value = a.ParticipantID, Selected = false }; } } } Ege15.cshtml @model WebApplication1.Models.Ege15VM @using (Html.BeginForm()) { Фамилия, Имя участника: @Html.DropDownListFor(x => x.Participant, Model.Participants) } HomeController.cs [HttpGet] public ActionResult Ege15() { var model = new Ege15VM(); return View(model); } [HttpPost] public ActionResult Ege15(Ege15VM model) { return View(); } Представление нормально отображается и раскрывающий список содержит необходимые ФИО. Но если нажать на "Сформировать отчет", т.е. вызвать POST, выскакивает ошибка: Ссылка на объект не указывает на экземпляр объекта Сообщение ссылается на строку Фамилия, Имя участника: @Html.DropDownListFor(x => x.Participant, Model.Participants)
Ответы
Ответ 1
Вот эта строчка: return View(); возвращает View, который будет отрендерен на основе ModelData - данных, переданных от клиента. model при этом будет null. замените ее на return View(model);
Комментариев нет:
Отправить комментарий