public async Task <IActionResult> Post([FromBody] Person person)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            foreach (var i in repository.GetPersons())
            {
                if (person.Username == i.Username)
                {
                    return(Conflict());                               //returns 409 error code if username is taken
                }
            }

            int rowAffected = await Task.Run(() =>
                                             repository.CreatePerson(Mapper.Map(person)));

            if (rowAffected > 0)
            {
                return(Ok());
            }

            return(BadRequest());
        }
示例#2
0
        /// <summary>
        /// Attempts to create user.
        /// </summary>
        /// <param name="person"></param>
        /// <returns>201Created if successful, 400BadRequest if unsuccessful</returns>
        public ActionResult CreateAccount([FromBody] Person person)
        {
            var users = repository.GetPersons();

            foreach (var i in users)
            {
                //username is taken
                if (person.Username == i.Username)
                {
                    return(BadRequest());
                }
            }
            int value = repository.CreatePerson(Mapper.Map(person));

            if (value > 0)
            {
                return(Ok());           //change to created
            }
            return(BadRequest());
        }