Arkadeep De
Я надеюсь, что это сработает для вас, поскольку вы пытаетесь сохранить выбранное значение в ViewBag.
public class UserVM
{
public string Year { set; get; }
public string Month { set; get; }
public string Day{ set; get; }
}
Установите значение в viewbag и свяжите его
[HttpGet]
public ActionResult Register(User user)
{
// It should be better to read this data from database
ViewBag.Year = new SelectList(
new List<SelectListItem>
{
new SelectListItem { Text = "1368", Value = "1987" },
new SelectListItem { Text = "1369", Value = "1988"}, //....
}, "Value" , "Text");
// Also other properties like Month and Day
return View();
}
@using (Html.BeginForm())
{
<div class="form-group">
@Html.DropDownListFor(m => m.Year, (SelectList)ViewBag.Year, "Select one")
</div>
<button type="Submit" class="btn btn-success submit">Send</button>
}
Получите выбранное значение и установите его в другой пакет просмотра.
[HttpPost]
public ActionResult Register(VM model)
{
if(!ModelState.IsValid)
{
ViewBag.SelectedYear = model.Year;
}
return View();
}
Member 1283347
Я не использую ViewModel, и они не являются SelectListItem. У меня есть выпадающий список html Option selected для пользователей, чтобы выбрать еженедельные или ежемесячные повторяющиеся события. Когда еженедельный элемент выбирается из выпадающего списка, то должен быть выполнен оператор if, выполняющий еженедельные события. Это не метод действия.
Member 1283347
Я решил свой вопрос. Я использовал enum RecurringSeries.Еженедельник, который не был должным образом назван. Изменен на столбец таблицы базы данных, и все работает нормально. Спасибо за вашу помощь.