public int Add(ThreadAddRequest model, int userId) { int id = 0; string procName = "dbo.Threads_Insert_V2"; _data.ExecuteNonQuery(procName, inputParamMapper : delegate(SqlParameterCollection col) { SqlParameter idOut = new SqlParameter("@Id", SqlDbType.Int); idOut.Direction = ParameterDirection.Output; col.AddWithValue("@Subject", model.Subject); col.AddWithValue("@Summary", model.Summary); col.AddWithValue("@Information", model.Information); col.AddWithValue("@CreatedBy", userId); col.Add(idOut); }, returnParameters : delegate(SqlParameterCollection returnCol) { object outputId = returnCol["@Id"].Value; Int32.TryParse(outputId.ToString(), out id); }); return(id); }
public ActionResult <ItemResponse <int> > Add(ThreadAddRequest model) { ObjectResult result = null; try { int userId = _authService.GetCurrentUserId(); int id = _service.Add(model, userId); ItemResponse <int> response = new ItemResponse <int>() { Item = id }; result = Created201(response); } catch (Exception ex) { Logger.LogError(ex.ToString()); ErrorResponse response = new ErrorResponse(ex.Message); result = StatusCode(500, response); } return(result); }