我正在使用Google表格C#SDK客户端。我使用您在下面看到的SheetsService
变量成功初始化并从电子表格中读取数据。
问题是我需要将一些数据保存到特定列。下面的方法接受记录,并且应该更新该记录行的列,但是没有写入任何内容。我还验证了在运行此方法时Fiddler中没有出现流量。
public static void Update(DataRecord record)
{
var updateRequest = new BatchUpdateValuesRequest()
{
ValueInputOption = "RAW",
Data = new List<ValueRange>()
{
new ValueRange()
{
Range = $"'Form Responses'!C{record.RowId}",
Values = new List<IList<object>>()
{
new List<object>()
{
record.TransactionNumber
}
}
},
new ValueRange()
{
Range = $"'Form Responses'!G{record.RowId}:I{record.RowId}",
Values = new List<IList<object>>()
{
new List<object>()
{
record.Name,
record.DateOfBirth,
record.Address
}
}
}
}
};
SheetsService.Spreadsheets.Values.BatchUpdate(updateRequest, SpreadsheetId);
}
我还验证了SheetService的范围设置为SheetsService.Scope.Spreadsheets
,并仔细验证我是否拥有正确的电子表格ID,标签名称和单元格范围选择。
我错过了什么?为什么批量更新没有网络流量,但是有读取流量?没有错误。它只是完成并继续前进。
答案 0 :(得分:2)
您错过了.Execute()
来电。最后一行应为:
SheetsService.Spreadsheets.Values.BatchUpdate(updateRequest, SpreadsheetId).Execute();