public ActionResult Register(RegisterModel rm) { if (ModelState.IsValid) { try { using (var context = new Entities()) { users _u = new users { usertype = rm.Type, username = rm.Username, passwd = _auth.GenPassword(rm.Password), email = rm.Email, phone = rm.Username, C_date = DateTime.Now, ispayment = false, isemail = false, isphone = false, C_status = true }; context.users.Add(_u); context.SaveChanges(); if (rm.Type == "Player") { players _p = new players { userid = (from u in context.users where u.email == rm.Email select u.userid).SingleOrDefault(), roleid = rm.RoleId, photo = "no-image.jpg", cover = "no-cover.jpg", playername = "", age = 0, bio = "" }; context.players.Add(_p); context.SaveChanges(); } else if (rm.Type == "Coach") { coachs _c = new coachs { userid = (from u in context.users where u.email == rm.Email select u.userid).SingleOrDefault(), name = rm.Username, age = 40, picture = "no-image.jpg", cover = "no-cover.jpg", positionid = rm.RoleId, bio = "Hey, I am coach!" }; context.coachs.Add(_c); context.SaveChanges(); } else { int __userid = (from u in context.users where u.email == rm.Email select u.userid).SingleOrDefault(); clubs _c = new clubs { clubid = (context.clubs.Max(c => c.clubid) + 1), userid = __userid, logo = "no-image.jpg", cover = "no-cover.jpg", cg = "" }; context.clubs.Add(_c); context.SaveChanges(); } ViewBag.Message = "Your account has been created, please login to continue!"; return(RedirectToAction("login")); } } catch (Exception ex) { ViewBag.Message = ex.Message; Console.WriteLine(ex); return(View("register", GamesPositions())); } } else { ViewBag.Message = "Input valid data!"; return(View("register", GamesPositions())); } }