下面是我的Dropdowns视图模型
[Required(ErrorMessage = "Gerekli Alan")]
[Display(Name = "İl")]
[UIHint("DropDownList")]
[AdditionalMetadata("DataController", "Register")]
[AdditionalMetadata("DataAction", "Province")]
public int? ProvinceId { get; set; }
[Required(ErrorMessage = "Gerekli Alan")]
[Display(Name = "İlçe")]
[UIHint("DependentDropDownList")]
[AdditionalMetadata("DependsOn", "ProvinceId")]
[AdditionalMetadata("DataController", "Register")]
[AdditionalMetadata("DataAction", "TownByProvinceId")]
public int? TownId { get; set; }这是控制器
[HttpPost]
public ActionResult Province()
{
IQueryable<DropDownListItem> queryable = from city in Db.Provinces
orderby city.Name
select new DropDownListItem { Text = city.Name, Value = city.Id };
return base.Json(queryable);
}
[HttpPost]
public ActionResult TownByProvinceId(int ProvinceId)
{
IQueryable<DropDownListItem> queryable = from province in Db.Towns
where province.ProvinceId == ProvinceId
orderby province.Name
select new DropDownListItem { Text = province.Name, Value = province.Id };
return base.Json(queryable);
}我正在尝试按省份列出城镇选定的ITem如何在视图中填充下拉列表?
发布于 2016-03-30 03:34:04
使用SelectListItem可能会有更好的运气。
在ViewModel中创建List<SelectListItem>类型的属性
在调用视图之前,请填充该属性。
var model = new MyViewModel { queryable = from province in Db.Towns
where province.ProvinceId == ProvinceId
orderby province.Name
select new SelectListItem { Text = province.Name, Value = province.Id, Selected = false }};那么在你看来,你是这样叫它的。
@Html.DropDownListFor(m => m.ProvinceId, m.queryable)这将为您提供一个下拉菜单,其中包含回发时存储在ProvinceId中的queryable中的所有值。
https://stackoverflow.com/questions/36286609
复制相似问题