'No ViewData item of type 'IEnumerable<SelectListItem>' that has the key
I get this error, for a Html.DropDownListFor using a SelectList, yet the key it complains about does exist.
The error:
There is no ViewData item of type 'IEnumerable<SelectListItem>' that has the key 'ObjectionRequirement.FkRequirementStatusId'.
The Object structure:
public class ObjectionRequirementViewModel
{
public ObjectionRequirement ObjectionRequirement { get; set; }
public List<ObjectionRequirement> ObjectionRequirements { get; set; }
public object RequirementStatusLookup { get; set; }
public ObjectionRequirementViewModel()
{
this.ObjectionRequirement = new ObjectionRequirement();
this.ObjectionRequirements = new List<ObjectionRequirement>();
this.RequirementStatusLookup = null;
}
}
public class ObjectionRequirement
{
public int? Id { get; set; }
public string Requirement { get; set; }
public int? FkRequirementStatusId { get; set; }
}
public class ObjectionRequirementStatus
{
public int? Id { get; set; }
public string Status { get; set; }
}
Code setting the ViewModels RequirementStatusLookup
List<ObjectionRequirementStatus> requirementStatuses = getRequirementStatuses();
ObjectionRequirementViewModel model = new ObjectionRequirementViewModel();
model.RequirementStatusLookup = new SelectList(requirementStatuses, "Id", "Status", selectedStatusId);
The Markup:
@Html.DropDownListFor(m => m.ObjectionRequirement.FkRequirementStatusId,
(SelectList)Model.RequirementStatusLookup)
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
