У меня есть список выбора в ASP.net MVC5, который показывает ParentProductID в моей модели. Модель выглядит следующим образом:
public class Product
{
public int ID { get; set; }
public string Name { get; set; }
public int? ParentProductID { get; set;}
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<Product> ChildProducts { get; set; }
public virtual Product Product1 { get; set; }
}
Я хочу показать первый элемент в выпадающем списке в качестве нулевых значений по умолчанию, когда не хочу выбирать ParentProductID для пользователя, но показать некоторый текст для нулевых значений, например notselected, и добавитьпервый SelectListItem для комбинирования, подобный этому:
ls.Insert(0, new SelectListItem { Text = "notselected", Value = null });
, но когда он достигает
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "ID,Name,ParentProductID")] Product product)
, он использует «notselected» в качестве значения, выбранного для modelitem. почему?
Но при использовании ниже в контроллере не выдается никакой ошибки, а используется комбо пустое:
ls.Insert(0, new SelectListItem { Text = "", Value = null });