public static void AddCells(RowEditBase rc, int colsToSkip) { // Skip the first column since if identity, since identity columns can't be updated for (int i = colsToSkip; i < rc.AssociatedResultSet.Columns.Length; i++) { rc.SetCell(i, "123"); } }
public static void AddCells(RowEditBase rc, bool includeIdentity) { // Skip the first column since if identity, since identity columns can't be updated int start = includeIdentity ? 1 : 0; for (int i = start; i < rc.AssociatedResultSet.Columns.Length; i++) { rc.SetCell(i, "123"); } }
/// <summary> /// Performs an update to a specific cell in a row. If the row has not already been /// initialized with a record in the update cache, one is created. /// </summary> /// <exception cref="InvalidOperationException">If adding a new update row fails</exception> /// <exception cref="ArgumentOutOfRangeException"> /// If the row that is requested to be edited is beyond the rows in the results and the /// rows that are being added. /// </exception> /// <param name="rowId">The internal ID of the row to edit</param> /// <param name="columnId">The ordinal of the column to edit in the row</param> /// <param name="newValue">The new string value of the cell to update</param> public EditUpdateCellResult UpdateCell(long rowId, int columnId, string newValue) { ThrowIfNotInitialized(); // Sanity check to make sure that the row ID is in the range of possible values if (rowId >= NextRowId || rowId < 0) { throw new ArgumentOutOfRangeException(nameof(rowId), SR.EditDataRowOutOfRange); } // Attempt to get the row that is being edited, create a new update object if one // doesn't exist // NOTE: This *must* be done as a lambda. RowUpdate creation requires that the row // exist in the result set. We only want a new RowUpdate to be created if the edit // doesn't already exist in the cache RowEditBase editRow = EditCache.GetOrAdd(rowId, key => new RowUpdate(rowId, associatedResultSet, objectMetadata)); // Update the row EditUpdateCellResult result = editRow.SetCell(columnId, newValue); CleanupEditIfRowClean(rowId, result); return(result); }