when i run my application it gives me this error on dropdownlist
The ViewData item that has the key 'talukcode' is of type 'System.Int32' but must be of type 'IEnumerable<SelectListItem>'.
Below is the view code :
@Html.DropDownListFor(model => model.talukcode, ViewBag.talukname as IEnumerable<SelectListItem>, "-- Select Tehsil --", new { @class = "form-control", @onchange = "FillCommune()", @id = "talukcode" })
@Html.ValidationMessageFor(model => model.talukcode, "", new { @class = "text-danger" })
Below is the Controller code :
public int VillageAdd(MasterModel model)
{
int result = 0;
int al_talukcd = 0, al_communecd = 0;
string al_village = string.Empty;
try
{
using (var context = new PPAEntities())
{
var datavillage = new ppavillage { regioncode = model.regioncode, talukcode = model.talukcode, villagecode = model.villagecode, villagename = model.villagename };
if (model.villagecode == 0)
{
var name_alexits = context.ppavillages.Where(x => x.talukcode == model.talukcode && x.villagename == model.villagename).FirstOrDefault();
if (name_alexits != null)
{
al_talukcd = name_alexits.talukcode;
//al_communecd = name_alexits.communecode;
//al_village = name_alexits.villagename;
al_village = name_alexits.villagename;
}
if (al_village.Trim().ToUpper() != model.villagename.Trim().ToUpper())
{
var MaxValue = (from c in context.ppavillages
where c.regioncode == model.regioncode //&& c.talukcode == model.talukcode
select c.villagecode).Max();
model.villagecode = MaxValue + 1;
ppavillage villagemst = new ppavillage();
villagemst.regioncode = model.regioncode;
villagemst.talukcode = model.talukcode;
villagemst.communecode = model.communecode;
villagemst.villagecode = model.villagecode;
villagemst.villagename = model.villagename;
villagemst.villagenamet = null;
villagemst.univillagename = null;
villagemst.urcodecn = "0";
villagemst.urcodet = "0";
context.ppavillages.Add(villagemst);
context.SaveChanges();
result = 1;
}
else
{
result = 2;
}
}
else
{
using (var contextdb = new PEntities())
{
contextdb.ppavillages.Attach(datavillage);
contextdb.Entry(datavillage).Property(x => x.villagename).IsModified = true;
contextdb.SaveChanges();
result = 3;
}
}
}
}
catch (Exception ex)
{
}
return result;
}
How can i solve this error?