Confused here. Just want to use the sample data in the constructor to display one field and then loop through the one record :
public class MikesViewModel
{
public MikesClass MikesClass { get; set; }
public List<MikesClass> MikesClassList { get; set; }
}
public ActionResult MikesView()
{
var viewClassModel = new MikesViewModel();
viewClassModel.MikesClass = new MikesClass();
viewClassModel.MikesClassList = new List<MikesClass> { new MikesClass() {} };
return View(viewClassModel);
}
View is the problem : the foreach
won't work if I take out @Html.DropDownListFor
:
@using AAA.Models
@model MikesViewModel
@Html.EditorFor(Model => Model.MikesClass.Name)
@using (Html.BeginForm())
{
@Html.DropDownListFor(model => model.MikesClass.Id,
new SelectList(Model.MikesClassList, "Id", "Name"))
}
**** This foreach won't work if I take out the ^ above line ** :**
@foreach (var item in Model.MikesClassList)
{
@item.Name
}
The weird thing is, if I take out the :
@Html.DropDownListFor(model => model.MikesClass.Id, new SelectList(Model.MikesClassList, "Id", "Name"))
the @foreach (var item in Model.MikesClassList)
doesn't work and gives the error :
'Model' conflicts with the declaration 'System.Web.Mvc.WebViewPage<TModel>.Model'
How can I get the foreach to work? Not understanding this.