/// <summary> /// Updates a display list sort field. /// </summary> /// <param name="dto"> /// The data transfer object. /// </param> public void UpdateDisplayListSortField(DisplayListSortFieldEditDto dto) { if (dto == null) throw new ArgumentNullException("dto"); const string CommandText = @" UPDATE [dbo].[DisplayListSortFields] SET [StepId] = @stepId ,[LastModifiedOn] = GETDATE() ,[Guid] = @guid ,[FieldName] = @fieldName ,[Order] = @order ,[SortDirection] = @sortDirection WHERE [Id] = @id;"; using (var cmd = new SqlCommand(CommandText)) { cmd.Parameters.AddWithValue("@id", dto.Id); cmd.Parameters.AddWithValue("@stepId", dto.StepId); cmd.Parameters.AddWithValue("@guid", dto.Guid); cmd.Parameters.AddWithValue("@fieldName", AdoHelper.NullCheck(dto.FieldName)); cmd.Parameters.AddWithValue("@order", dto.Order); cmd.Parameters.AddWithValue("@sortDirection", dto.SortDirection.ToString()); var rowsAffected = Database.Execute(cmd); if (rowsAffected == 0) { throw new DBConcurrencyException(Resources.StaleDataException); } } }
/// <summary> /// Inserts a display list sort field. /// </summary> /// <param name="dto"> /// The data transfer object. /// </param> public void InsertDisplayListSortField(DisplayListSortFieldEditDto dto) { if (dto == null) throw new ArgumentNullException("dto"); const string CommandText = @" INSERT INTO [dbo].[DisplayListSortFields] ( [StepId] ,[LastModifiedOn] ,[Guid] ,[FieldName] ,[Order] ,[SortDirection] ) VALUES ( @stepId ,GETDATE() ,@guid ,@fieldName ,@order ,@sortDirection ) SET @id = SCOPE_IDENTITY();"; using (var cmd = new SqlCommand(CommandText)) { var idParam = cmd.Parameters.Add("@id", SqlDbType.Int); idParam.Direction = ParameterDirection.Output; cmd.Parameters.AddWithValue("@stepId", dto.StepId); cmd.Parameters.AddWithValue("@guid", dto.Guid); cmd.Parameters.AddWithValue("@fieldName", AdoHelper.NullCheck(dto.FieldName)); cmd.Parameters.AddWithValue("@order", dto.Order); cmd.Parameters.AddWithValue("@sortDirection", dto.SortDirection.ToString()); var rowsAffected = Database.Execute(cmd); if (rowsAffected == 0) { throw new DBConcurrencyException(Resources.StaleDataException); } dto.Id = (int)idParam.Value; } }