public int AddProfile(UserProfileAddRequest_V2 model, int userId) { int id = 0; string ProcName = "[dbo].[UserProfile_Insert_Wizard]"; _data.ExecuteNonQuery(ProcName, inputParamMapper : delegate(SqlParameterCollection col) { DataTable dtSkills = AddMultipleSkills(model.Seeker.Skills); DataTable dtFiles = AddMultipleFiles(model.Seeker.Files); DataTable dtEducation = AddMultipleEducationDetails(model.EducationDetails); DataTable dtExperience = AddMultipleExperienceDetails(model.ExperienceDetails); DataTable dtSeeker = AddSeeker(model.Seeker); SqlParameter idOut = new SqlParameter("@Id", SqlDbType.Int); idOut.Direction = ParameterDirection.Output; col.Add(idOut); col.AddWithValue("@UserId", userId); UserProfileMapper(model, col, dtSkills, dtFiles, dtEducation, dtExperience, dtSeeker); }, returnParameters : delegate(SqlParameterCollection returnCollection) { object oldId = returnCollection["@id"].Value; int.TryParse(oldId.ToString(), out id); }); return(id); }
private static void UserProfileMapper(UserProfileAddRequest_V2 model, SqlParameterCollection col, DataTable dtSkills, DataTable dtFiles, DataTable dtEducation, DataTable dtExperience, DataTable dtSeeker) { col.AddWithValue("@FirstName", model.FirstName); col.AddWithValue("@LastName", model.LastName); col.AddWithValue("@Mi", model.Mi); col.AddWithValue("@AvatarUrl", model.AvatarUrl); col.AddWithValue("@Skills", dtSkills); col.AddWithValue("@Files", dtFiles); col.AddWithValue("@Education", dtEducation); col.AddWithValue("@Experience", dtExperience); col.AddWithValue("@Seeker", dtSeeker); }
public ActionResult <ItemResponse <int> > Add(UserProfileAddRequest_V2 model) { ObjectResult result = null; try { int userId = _authService.GetCurrentUserId(); int id = _service.AddProfile(model, userId); ItemResponse <int> response = new ItemResponse <int>() { Item = id }; result = Created201(response); } catch (Exception ex) { base.Logger.LogError(ex.ToString()); ErrorResponse response = new ErrorResponse(ex.Message); result = StatusCode(500, response); } return(result); }