public async Task <IActionResult> Create([FromBody] EmployeeModel employee) { try { employee.IsNull().Throw <InvalidParameterException>(string.Format(Messages.CannotBeNull, "employee")); var entity = await employeeApp.SaveAsync(employee.ToDomain()); var result = EmployeeModel.ToModel(entity); ////if (employee.Email == "*****@*****.**") ////{ //// return Conflict(); ////} var urlHelper = urlHelperFactory.GetUrlHelper(ControllerContext); var getByIdlink = GetEmployeeByIdLink(urlHelper, result.Id); var deleteLink = DeleteEmployeeLink(urlHelper, result.Id); var updateLink = UpdateEmployeeLink(urlHelper, result.Id); result.Links = new List <Link> { getByIdlink, updateLink, deleteLink }; return(new CreatedResult(getByIdlink.Href, result)); } catch (InvalidParameterException ex) { return(BadRequest(ex.Message)); } catch (BusinessConflictException) { return(Conflict()); } catch (Exception ex) { return(InternalServerError(new UnpredictableException(ex))); } }