Exemple #1
0
 // POST: api/users
 public HttpResponseMessage Post([FromBody] User user)
 {
     if (user != null && !string.IsNullOrEmpty(user.username) && !string.IsNullOrEmpty(user.password) && !string.IsNullOrWhiteSpace(user.email))
     {
         var usuarioDb = db.User.FirstOrDefault(u => u.username == user.username);
         if (usuarioDb == null)
         {
             try
             {
                 user.salt     = HomeController.CreateSalt();
                 user.password = HomeController.HashPassword(user.password, user.salt);
                 db.User.Add(user);
                 db.SaveChanges();
                 return(Request.CreateResponse(HttpStatusCode.Created));
             }
             catch (Exception e)
             {
                 return(Request.CreateResponse(HttpStatusCode.InternalServerError, string.Format("{0} - {1}", ERROR, e.Message)));
             }
         }
         return(Request.CreateResponse(HttpStatusCode.Conflict, "usuario duplicado"));
     }
     return(Request.CreateResponse(HttpStatusCode.BadRequest, "usuario no válido"));
 }