I am trying to fetch multiple attribute value with single drop down list in mvc action but i am not able to fetch complex data with single drop down list.
Please provide any solution.
Your feedback will be appreciated.
What I have tried:
public class ViewModelMain
{
public ViewModelSubfunctiona Drp { get; set; }
public List<viewmodelsubfunctiona> ListFunc { get; set; }
}
public class ViewModelSubfunctiona
{
public int Id{get;set;}
public string Name{get;set;}
public int FuncId{get;set;}
}
[HttpGet]
public ActionResult Index()
{
var data = GetList();
ViewModelMain model = new ViewModelMain();
model.ListFunc = data;
return View(model);
}
[HttpPost]
public ActionResult Index(ViewModelMain model)
{
return View();
}
public List<ViewModelSubfunctiona> GetList()
{
List<ViewModelSubfunctiona> _list = new List<ViewModelSubfunctiona>();
_list.Add(new ViewModelSubfunctiona { Id = 1, Name = "A", FuncId = 1 });
_list.Add(new ViewModelSubfunctiona { Id =2, Name = "B", FuncId = 1 });
_list.Add(new ViewModelSubfunctiona { Id = 3, Name = "C", FuncId = 1 });
_list.Add(new ViewModelSubfunctiona { Id = 4, Name = "D", FuncId = 2 });
_list.Add(new ViewModelSubfunctiona { Id = 5, Name = "E", FuncId = 2 });
_list.Add(new ViewModelSubfunctiona { Id = 6, Name = "F", FuncId =2 });
return _list;
}
View:@model Test.Controllers.ViewModelMain
@Html.DropDownListFor(x => x.Drp, new SelectList(Model.ListFunc,"Id","Name"),"", new { @maxlength="20", @style="" })