“ There is no ViewData item of type 'IEnumerable' that has the key ” hatası

0

Arkadaşlar merhaba, DropDown list ile tanımladığım sınavları getirmek istiyorum. Bunun sonucunda 

System.InvalidOperationException: There is no ViewData item of type 'IEnumerable<SelectListItem>' that has the key 'gruplar.SelectedSinav'.

hatasını alıyorum. Kodları Breakpointle incelediğimde Controller'da GET kısmına hiç girmediğini gördüm. Post kısmında tanımlı olan liste dolu bir şekilde geliyor fakat get kısmına hiç girmiyor bile. Bunun sebebi ne olabilir. 

 

View 

@Html.DropDownListFor(d => d.gruplar.SelectedSinav, (IEnumerable<SelectListItem>)ViewBag.SinavList, "Sinav Seçiniz...", new { @class = "required" })

Controller

public ActionResult CreateGruplar()
{
    var sinav = SinavManager.GetSinav();
    var list = new SelectList(sinav, "SinavId", "SinavAdi");
    ViewBag.SinavList = list;
    return View();
}

[HttpPost]
public ActionResult CreateGruplar(Gruplar gruplar,FormCollection collection) 
{
    TempData["EventResult"] = GruplarManager.AddGruplar(gruplar,collection);
    if (((SG_BLL.Tools.Result)TempData["EventResult"]).Status.Equals("error"))
    {
        var sinav = SinavManager.GetSinav();
        var list = new SelectList(sinav, "SinavId", "SinavAdi");
        ViewBag.SinavList = list;
        return View();
    }
    return RedirectToAction("Create", "Sinav");
}

Manager (List Create)

public static List<Sinav> GetSinav()
{
    using (SGContext db = new SGContext())
    {
        try
        {
            var repo = new Repository<Sinav>(db);
            var sinavList = repo.Listele().Where(d => d.IsDeleted == false);
            return sinavList.ToList();
        }
        catch (Exception)
        {
            return null;
        }
    }
}

 

betty betty (1)
2 yıl önce sordu

Toplam 0 Cevap


üyelik gerektirir

Cevap yazabilmek için üye girişi yapmalısınız.

Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol