Asp.net mvc 4 如何使用MVC4将硬编码的dropdownlist值绑定到数据库中?
我创建了dropdownlist,它填充国家名称,国家名称的值是硬编码的。现在我想选定的国家名称必须存储在数据库中。有人能帮我吗?我在Get方法中尝试了以下代码Asp.net mvc 4 如何使用MVC4将硬编码的dropdownlist值绑定到数据库中?,asp.net-mvc-4,Asp.net Mvc 4,我创建了dropdownlist,它填充国家名称,国家名称的值是硬编码的。现在我想选定的国家名称必须存储在数据库中。有人能帮我吗?我在Get方法中尝试了以下代码 SelectListItem item; List<SelectListItem> CountryList = new List<SelectListItem>(); item = new SelectListItem(); item.Text = "India"; item.Value = "1"; myLis
SelectListItem item;
List<SelectListItem> CountryList = new List<SelectListItem>();
item = new SelectListItem();
item.Text = "India";
item.Value = "1";
myList.Add(item);
item = new SelectListItem();
item.Text = "Italy";
item.Value = "0";
CountryList.Add(item);
ViewBag.country = CountryList;
return View();
视图:
@Html.DropDownListFor(m=>m.countryname,(IEnumerable)ViewBag.country,“选择国家”);
什么是“不起作用”?它正在填充,但选定的值未存储到数据库中。如果绑定到属性,则设置选定的
属性是毫无意义的(选定的选项是countryname
的值-忽略选定的
属性)。在第二种选择中,它应该是@Html.DropDownListFor(m=>m.countryname,(IEnumerable)ViewBag.country,“选择国家”)
(它已经是一个选择列表,因此您不需要再创建一个!)保存到db的服务器代码看起来如何?当您发回时,countryname
的值将是0
或1
,具体取决于您选择的是印度还是意大利
。如果它不起作用,请显示您的POST方法。
public class Createcountry
{
[Table("mytable", Schema = "public")]
public class Create
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int regionid { get; set; }
public string countryname { get; set; }
}
}
@Html.DropDownListFor(m => m.countryname, (IEnumerable<SelectListItem>)ViewBag.country, "select country");