public async Task <IActionResult> Post([FromBody] ProjectMaintenanceTaskDto dto) { using (Logger.BeginScope("Insert Project Maintenance Task")) { if (!ModelState.IsValid) { return(BadRequest(new { message = "Not a valid model" + ModelState.ToString() })); } try { _UnitOfWork.Transaction = _UnitOfWork.Begin(); var id = await _UnitOfWork.TaskRepository.InsertProjectMaintenanceTaskAsync(dto); _UnitOfWork.Commit(); return(Ok(id)); } catch (Exception ex) { _UnitOfWork.Dispose(); return(BadRequest(new { message = ex.Message })); } } }
public async Task <int> InsertProjectMaintenanceTaskAsync(ProjectMaintenanceTaskDto dto) { var sql = " DECLARE @ID int;" + " INSERT INTO [dbo].[Task] " + " ([TaskName] " + " ,[StartDate] " + " ,[EndDate]" + " ,[Duration]" + " ,[ProjectMaintenanceId] " + " ,[EmpId] " + " ,[CreatedId] " + " ,[CreatedDate]) " + " VALUES " + " (@TaskName" + " ,@StartDate" + " ,@EndDate" + " ,@Duration" + " ,@ProjectMaintenanceId " + " ,@EmpId" + " ,@CreatedId " + " ,GETDATE() )" + " SET @ID = SCOPE_IDENTITY(); " + " SELECT @ID"; var id = await Connection.QuerySingleAsync <int>(sql, new { TaskName = dto.TaskName, ProjectMaintenanceId = dto.ProjectMaintenanceId, StartDate = dto.StartDate, EndDate = dto.EndDate, Duration = dto.Duration, EmpId = dto.EmpId, CreatedId = dto.CreatedId }, Transaction); return(id); }