public IHttpActionResult Post(EmailAccountEntityModel entityModel) { if (!ModelState.IsValid) { return(BadRequest()); } //create a new email account var emailAccount = new EmailAccount() { Id = entityModel.Id, Email = entityModel.Email, UserName = entityModel.UserName, FromName = entityModel.FromName, Host = entityModel.Host, UseSsl = entityModel.UseSsl, Port = entityModel.Port, UseDefaultCredentials = entityModel.UseDefaultCredentials, Password = _cryptographyService.Encrypt(entityModel.Password) }; //if this is the first account, we'll set it as default emailAccount.IsDefault = _emailAccountService.Count() == 0; //save it _emailAccountService.Insert(emailAccount); VerboseReporter.ReportSuccess("Successfully saved email account", "post_emailaccount"); return(RespondSuccess(new { EmailAccount = emailAccount.ToEntityModel() })); }