Я установил свойство enum как обнуляемое в моей модели, но когда я отправляю свою форму создания, я получаю 'Значение' Выбор 'недопустимо для productColor.'
Моя модель:
public class product
{
public int productId { get; set; }
public string productName { get; set; }
public color? productColor { get; set; }
}
public enum color
{
Red, Green, Blue
}
My Create View:
<div class="form-group">
<label asp-for="productColor" class="control-label"></label>
<select asp-for="productColor" asp-items="@Html.GetEnumSelectList<color>()" class="form-control">
<option>Select</option>
</select>
<span asp-validation-for="productColor" class="text-danger"></span>
</div>
My Controller:
public async Task<IActionResult> Create([Bind("productId,productName,productColor")] product product)
{
if (ModelState.IsValid)
{
_context.Add(product);
await _context.SaveChangesAsync();
return RedirectToAction(nameof(Index));
}
return View(product);
}
Результат:
Форма, по-видимому, содержит нулевое значение для значения productColor, но для моделисостояние недопустимо в контроллере, и представление возвращается с 'Значение' Select 'недопустимо для productColor.'