public ActionResult CreateTask(Task task)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }
            task.CreatedAt = DateTime.Now;
            _db.Tasks.Add(task);
            int result = _db.SaveChanges();

            if (result == 1)
            {
                return(RedirectToAction(nameof(GetTasks)));
            }
            else
            {
                return(NoContent());
            }
        }
        public ActionResult Register(User user)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(new { message = "Model validation failed" }));
            }
            User duplicateUser = _db.Users.Where(q => q.Username == user.Username).FirstOrDefault();

            if (duplicateUser != null)
            {
                return(BadRequest(new { message = "User with this username already exists" }));
            }
            string passwordHash = BCrypt.Net.BCrypt.HashPassword(user.Password);

            user.Password = passwordHash;
            _db.Users.Add(user);
            _db.SaveChanges();
            return(Ok(new { message = "User Registered" }));
        }