c# - .NET 客户端中 Google 表格中的条件格式请求
问题描述
我知道如何在 Google Sheets API 中对值和其他格式进行批量电子表格更新请求,但条件格式似乎有所不同。我已正确设置请求:
AddConditionalFormatRuleRequest formatRequest = new AddConditionalFormatRuleRequest
{
Rule = new ConditionalFormatRule
{
Ranges = new List<GridRange>
{
new GridRange
{
// omitted
}
},
BooleanRule = new BooleanRule
{
Condition = new BooleanCondition
{
// omitted
},
Format = new CellFormat
{
// omitted
}
},
},
};
formatRequests.Add(formatRequest);
问题是,您如何实际执行此操作?这是问题所在:
BatchUpdateSpreadSheetRequest updateRequest = new BatchUpdateSpreadsheetRequest
{
Requests = formatRequests // this doesn't work
};
// resource is a SpreadsheetsResource object
SpreadsheetsResource.BatchUpdateRequest batchRequest = resource.BatchUpdate(updateRequest, spreadsheet.SpreadsheetId);
这部分不起作用,因为BatchUpdateSpreadSheetRequest.Requests
它是 type IList<Request>
,但AddConditionalFormatRuleRequest
不继承自Request
. 它只实现IDirectResponseActionSchema
(参见源代码第 2254 行),那么如何实际执行这些请求?
因此,我应该使用其他一些对象/方法来执行此操作,但它在哪里?
提前致谢。
解决方案
来自 .NET 背景,我真的很难思考如何使用 Google API。事情只是组织得很奇怪(对我来说),.NET 组件的文档看起来不像 MSDN,所以我觉得很难。无论如何,我想通了。您不单独使用AddConditionalFormatRuleRequest
该类。您必须将其包装在常规Request
对象中。
Request formatRequest = new Request
{
AddConditionalFormatRule = new AddConditionalFormatRuleRequest
{
// etc
}
};
推荐阅读
- c++ - 错误:被释放的指针未在向量模板类 C++ 中分配
- python - pytorch cnn 步幅错误
- java - AWS Android SDK 将文件上传到 S3 但在存储桶中找不到
- java - 如何将设置器值直接传递给网页(百里香)?
- r - 使用 R 获取 csv 文件并过滤
- sql - Laravel 嵌套查询
- php - php代码中的循环错误
- c++ - std::unordered_map 如何存储和比较其键以实现快速访问元素而无需排序?
- javascript - Firebase Cloud 函数事件 - 有时无法获取更新事件的数据
- javascript - getBoundingClientReact 不存在