Нет элемента ViewData типа «IEnumerable <SelectListItem>», который имеет ключ «Categoryid» при загрузке изображения в Code First - PullRequest
0 голосов
/ 06 июня 2019

Нет элемента ViewData типа 'IEnumerable', который имеет ключ 'Categoryid'

Но я заметил нечто более загадочное Хотя мне показана ошибка, но когда я открываю список продуктов, новый продукт сохраняется после того, как я Закрыть сообщение об ошибке и в этом проекте я стараюсь сделать фото для каждого продукта и когда я очищаю и удаляю загрузку и фото, ошибка решена Поэтому я хочу загрузить фото на каждый товар без этой ОШИБКИ

My View:

  @Html.DropDownList("Categoryid", (IEnumerable<SelectListItem>) ViewBag.Categoryid, htmlAttributes: new { @class = "form-control" })


Мой код:

    public ActionResult Create()
    {
        var CategoryList = dbcontext.category.ToList();
        List<SelectListItem> List = new List<SelectListItem>();

        foreach (var item in CategoryList)
        {
            List.Add(new SelectListItem { Text = item.CategoryName, Value = item.CategoryID.ToString() });
        }

        ViewBag.Categoryid = List;
        return View();
    }

    // POST: Products/Create
    [HttpPost]
    public ActionResult Create(Product product, HttpPostedFileBase file)
    {
        try
        {

            // TODO: Add insert logic here
            product.Image = file.FileName;


            file.SaveAs(Server.MapPath("/Upload" + file.FileName));
            dbcontext.product.Add(product);
            dbcontext.SaveChanges();
            return RedirectToAction("Index");
        }
        catch (Exception ex)
        {
            ViewBag.Error = ex;

            return View();
        }
    }
...