没有类型为'IEnumerable'它的键是'IdJournal

本文关键字:IdJournal IEnumerable 类型 SelectListItem | 更新日期: 2023-09-27 17:54:20

我在Stack Overflow上找到了关于这个问题的多个帖子,但没有一个答案可以解决我的问题。

我有一个视图下拉列表,显示从表的日志项目标签在数据库:日志:id,标签下面是视图的代码:

@using (Html.BeginForm("Index", "Home", FormMethod.Post, new { @enctype = "multipart/form-data" }))
                    {            
        <input style="margin-left:40px;cursor:pointer;" type="file" name="file" id="upload"/>
         <input type="text" name="journal" value="test"/>
        <input type="submit" style="margin-left:40px;cursor:pointer;" id="load" value="Upload"/>
                  @Html.DropDownList("IdJournal")
                     }  

控制器是:

[HttpPost]
    public ActionResult Index(HttpPostedFileBase file, string journal, long IdJournal)
    {
        ScanITAPP.Service.ImageRender service = new Service.ImageRender();
        service.UploadImageToDB(file, journal, IdJournal);

        return View();
    }
    public ActionResult Form()
    {
        return PartialView("Form");
    }
    //DropdownList
    public ActionResult Index()
    {
        var db = new Bd_scanitEntities();
        IEnumerable<SelectListItem> items = db.JournalSet
          .Select(c => new SelectListItem
          {
              Value = c.Id.ToString(),
              Text = c.label
          });
        ViewBag.IdJournal = items;
        //ViewData["IdJournal"] = items;
        return View();
    }

代码是用于上传和图像,并将其关联到一个"日志",执行代码后,我得到图像与Journal_id在我的数据表,但它抛出了一个错误:没有类型的"IEnumerable"的ViewData项目有键"Id"。我不知道是什么问题,请帮帮我。

没有类型为'IEnumerable<SelectListItem>'它的键是'IdJournal

我通过编辑控制器方法解决了这个问题

[HttpPost]
public ActionResult Index(HttpPostedFileBase file, string journal, long IdJournal)
{    
    var db = new Bd_scanitEntities();
    IEnumerable<SelectListItem> items = db.JournalSet
      .Select(c => new SelectListItem
      {
          Value = c.Id.ToString(),
          Text = c.label
      });
    ViewBag.IdJournal = items;
    ScanITAPP.Service.ImageRender service = new Service.ImageRender();
    service.UploadImageToDB(file, journal, IdJournal);

    return View();
}