private Request CreateUpdateRequest(GoogleSheetUpdateRequest r) { var sheetId = GetSheetId(r.SheetName); if (sheetId == null) { throw new ArgumentException($"Не найдена таблица {r.SheetName}"); } var gc = new GridCoordinate { ColumnIndex = r.ColumnStart, RowIndex = r.RowStart, SheetId = sheetId }; var request = new Request { UpdateCells = new UpdateCellsRequest { Start = gc, Fields = "*" } }; var listRowData = new List <RowData>(); foreach (var row in r.Rows) { var listCellData = new List <CellData>(); foreach (var cell in row) { var cellData = CreateCellData(cell); listCellData.Add(cellData); } var rowData = new RowData() { Values = listCellData }; listRowData.Add(rowData); } request.UpdateCells.Rows = listRowData; return(request); }
private static IEnumerable <GoogleSheetUpdateRequest> CreateUpdateRequests(string sheetName, int columnStart, int rowStart, object[] values) { for (int i = 0; i < values.Length; i++) { var value = values[i]; if (value == null) { continue; } var row = new GoogleSheetRow(); row.Add(GoogleSheetCell.Create(value)); var request = new GoogleSheetUpdateRequest(sheetName) { ColumnStart = columnStart + i, RowStart = rowStart, Rows = { row }, }; yield return(request); } }