单击提交按钮后数据未保存 - MVC 5

Data Not Saved after click on submit button - MVC 5

点击 sumbit 按钮并尝试调试代码后,我没有收到任何错误或异常,但数据未保存 我有一个名为 login 的 class ... 在单击登录按钮后需要用户将其数据保存在数据库中 这是我的 Post 操作:

    [HttpPost]
    [AllowAnonymous]
    [ValidateAntiForgeryToken]
    public ActionResult Login(Login model, string returnUrl)
    {
        Context db = new Context();
        if (string.IsNullOrEmpty(model.LoginName))
        {
            this.ModelState.AddModelError("LoginName", "this field is required");
            return this.View(model);
        }
        try
        {
            if (ModelState.IsValid)
            {

                var user = new Login { LoginName = model.LoginName, LoginPassword = model.LoginPassword };
                db.Logins.Add(user);
                db.SaveChanges();
                return Redirect("http://www.google.com");
            }


            else
                return View();

        }
        catch (Exception e)
        {
            return View();
        }
    }

这是我的登录名 Class:

[Table("Login")]
public partial class Login
{
    public int ID { get; set; }

    [StringLength(50)]
    public string LoginName { get; set; }

    [StringLength(10)]
    public string LoginPassword { get; set; }
}

这是我的 DBContext:

public class LoginContext : DbContext 
{
    public LoginContext () : base("LoginContext ")
    {
    }
    public virtual DbSet<Login> Logins { get; set; }
    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    }
}

后return到googlelink数据未保存。

在尝试了很多解决方案后,我终于发现:

  1. 添加代码优先代码时,我使用 与 table 同名 "Login".

  2. 全部删除然后先添加新代码"DBContext"然后 选择你的数据库。

  3. 会发现DBConext会自动添加,你的table也会添加。 这将正常工作。