.NET 客户端中 Google 表格中的条件格式化请求
Conditional formatting requests in Google Sheets in .NET client
我知道如何对 Google 工作表 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
是 IList<Request>
类型,但 AddConditionalFormatRuleRequest
没有继承自 Request
。它只实现了 IDirectResponseActionSchema
(参见 source code 第 2254 行),那么如何实际执行这些请求呢?
所以我应该使用其他一些 object/method 来执行此操作,但它在哪里?
提前致谢。
来自 .NET 背景,我真的很难理解如何使用 Google API。事情的组织(对我来说)很奇怪,.NET 组件的文档看起来一点也不像 MSDN,所以我觉得很难。无论如何,我想通了。您不单独使用 AddConditionalFormatRuleRequest
class。您必须将其包装在常规 Request
对象中。
Request formatRequest = new Request
{
AddConditionalFormatRule = new AddConditionalFormatRuleRequest
{
// etc
}
};
我知道如何对 Google 工作表 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
是 IList<Request>
类型,但 AddConditionalFormatRuleRequest
没有继承自 Request
。它只实现了 IDirectResponseActionSchema
(参见 source code 第 2254 行),那么如何实际执行这些请求呢?
所以我应该使用其他一些 object/method 来执行此操作,但它在哪里?
提前致谢。
来自 .NET 背景,我真的很难理解如何使用 Google API。事情的组织(对我来说)很奇怪,.NET 组件的文档看起来一点也不像 MSDN,所以我觉得很难。无论如何,我想通了。您不单独使用 AddConditionalFormatRuleRequest
class。您必须将其包装在常规 Request
对象中。
Request formatRequest = new Request
{
AddConditionalFormatRule = new AddConditionalFormatRuleRequest
{
// etc
}
};