MVC 5不能隐式将int类型转换为模型?

时间:2017-05-17 13:23:32

标签: c# asp.net asp.net-mvc asp.net-mvc-5

我不熟悉C#或ASP.NET,但我想试用MVC, 但是有一个问题我一直试图修复一个多星期而且我有点绝望了。

    public ActionResult Create([Bind(Include = "vrijwilligerID,aanhef,voornaam,achternaam,geboortedatum,verwijderd,Actief,startdatum,organisatieID")] Vrijwilligers vrijwilligers)
    {
        bool intakeSessie = (bool)HttpContext.Session["intakeBezig"];
        if (intakeSessie == true)
        {
            var getOrgId = HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>().FindById(User.Identity.GetUserId()).organisatieId;
            int orgId = getOrgId.organisatieID;

            vrijwilligers.organisatieID = orgId;

            db.Vrijwilligers.Add(vrijwilligers);
            db.SaveChanges();
            HttpContext.Session["nawGegevens"] = vrijwilligers;
            return RedirectToAction("Create", "Emails");
        }
    }

organisatieID由隐藏值null传递,因为该值位于users表中。最终我终于得到了int,但现在我不断收到错误,它无法将int类型转换为NAMESPACE.MODELS.MODEL

1 个答案:

答案 0 :(得分:0)

我自己找到了解决方案,我必须从我的数据库中获取值:

  

var getOrgId = HttpContext.GetOwinContext().GetUserManager<ApplicationUserManager>().FindById(User.Identity.GetUserId()).organisatieId; int orgId = getOrgId.organisatieID; vrijwilligers.organisatieID = db.Organisaties.FirstOrDefault(x => x.organisatieID == orgId);