public ActionResult SignIn(UserDetail userDetail)
        {
            using (var context = new HotelBookingSystemEntities())
            {
                var email     = userDetail.Email;
                var passsword = userDetail.Password;

                if (context.UserDetails.Any(x => x.Email.Equals(userDetail.Email, StringComparison.Ordinal) && x.Password.Equals(userDetail.Password, StringComparison.Ordinal)))
                {
                    UserDetail user = context.UserDetails.Single(x => x.Email == userDetail.Email);
                    Session["UserEmail"] = user.Email;
                    Session["UserRole"]  = user.UserTypeId;
                    FormsAuthentication.SetAuthCookie(user.Email, false);
                    if (user.UserTypeId == 1)
                    {
                        return(RedirectToAction("Index", "Admin"));
                    }
                    else if (user.UserTypeId == 2)
                    {
                        Session["UserName"] = user.FirstName;
                        Session["UserId"]   = user.UserId;
                        return(RedirectToAction("Index", "User"));
                    }
                    else
                    {
                        return(View());
                    }
                }
            }
            ModelState.AddModelError("", "Invalid email and password");
            return(View());
        }
        public ActionResult SignUp(UserDetail userDetail)
        {
            if (ModelState.IsValid)
            {
                userDetail.UserTypeId = 2;

                using (var context = new HotelBookingSystemEntities())
                {
                    context.UserDetails.Add(userDetail);
                    context.SaveChanges();
                    return(RedirectToAction("SignIn"));
                }
            }
            return(View());
        }