C# EntityFramework.dll中发生“System.InvalidOperationException”类型的异常,但注册时未在用户代码中处理

C# EntityFramework.dll中发生“System.InvalidOperationException”类型的异常,但注册时未在用户代码中处理,c#,asp.net,asp.net-mvc,entity-framework,asp.net-mvc-5,C#,Asp.net,Asp.net Mvc,Entity Framework,Asp.net Mvc 5,我的代码中出现以下异常 EntityFramework.dll中发生“System.InvalidOperationException”类型的异常,但未在用户代码中处理 其他信息:实体类型用户不是当前上下文模型的一部分 下面是我的注册控制器 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace Registratio

我的代码中出现以下异常

EntityFramework.dll中发生“System.InvalidOperationException”类型的异常,但未在用户代码中处理

其他信息:实体类型用户不是当前上下文模型的一部分

下面是我的注册控制器

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace Registration2.Controllers
{
    public class userController : Controller
    {
        // GET: user
        public ActionResult Index() => View();
        public ActionResult Register() => View();

        [HttpPost]
        [ValidateAntiForgeryToken]
        public ActionResult Register(Registration2.user U)
        {
            if (ModelState.IsValid)
            {
                using (MyDatabase2Entities dc = new MyDatabase2Entities())
                {
                    //you should check duplicate registration here 
                    // dc.users.Add

                    dc.users.Add(U);
                    dc.SaveChanges();
                    ModelState.Clear();
                    U = null;
                    ViewBag.Message = "Successfully Registration Done";
                }
            }
            return View(U);
        }
    }
}
我对ASP.net和MVC完全陌生,所以如果我遗漏了什么,请告诉我,我会在这里发布

实体类型用户不是当前上下文的模型的一部分


这是突出的部分。用户对象是MyDatabase2Entities上下文的一部分吗?看起来不是这样。

如果右键单击数据模型并选择“验证”,是否会出现任何错误?请将代码包装在try-catch块中,并向我们显示异常消息和堆栈跟踪,我们将能够为您提供更多帮助。另外,当保存后返回视图时,为什么要将用户设置为null?另外,U应该是小写的参数名称。我更喜欢使用小写的类名。因此,使用用户而不是U。@CarlProthman:是的,我将U删除为null,但我不知道如何验证数据模型,请告诉我如何验证数据模型?是的,您在这里是正确的,但如何使其成为当前上下文的一部分?右键单击数据模型并选择“从数据库更新”,向导出现后,确保选择用户表。HTH@CarlProthman:非常感谢,伙计,你确实解决了我的问题,但这是我唯一可以接受的答案,不用担心。很高兴这解决了你的问题。