编程语言
首页 > 编程语言> > c# – Google表格API v4 dot Net删除一行

c# – Google表格API v4 dot Net删除一行

作者:互联网

我正在构建一个与Google表格配合使用的界面.它的工作方式是将电子表格中的所有记录拉入我界面的网格视图中.此界面上有一个按钮,提供编辑,删除等选项.

我的删除方法有问题.它的工作方式是我的所有记录都被引入到方法中,然后使用for循环遍历结果并将结果中的ID字段与传递给方法的ID进行比较.匹配时,即要删除的匹配项.所有这一切都有效,一切顺利,但由于某种原因,记录不会从我的谷歌表中删除.下面是我对Google表格API v4的dot NET包装器的代码.如果有人可以帮助我,我将不胜感激.我一直盯着文档并将其他语言的部分拼凑起来几个小时,而我的大脑并没有想出任何新的东西,哈哈.

if (ID.ToString() == WHVACRMembers[i][0].ToString()) // IF INCOMING ID MATCHES ID OF CURRENT ROW BEING LOOPED OVER
{
    //DELETE THIS ROW
    Request RequestBody = new Request() { 
        DeleteDimension = new DeleteDimensionRequest() { 
            Range = new DimensionRange() { 
                SheetId = 0, 
                Dimension = "ROWS", 
                StartIndex = Convert.ToInt32(i), 
                EndIndex = Convert.ToInt32(i) 
            } 
        } 
    };

    List<Request> RequestContainer = new List<Request>();
    RequestContainer.Add(RequestBody);

    BatchUpdateSpreadsheetRequest DeleteRequest = new BatchUpdateSpreadsheetRequest();
    DeleteRequest.Requests = RequestContainer;

    service.Spreadsheets.BatchUpdate(DeleteRequest, SpreadsheetID);

}

解决方法:

我刚刚弄明白了这个问题.代替:

service.Spreadsheets.BatchUpdate(DeleteRequest, SpreadsheetID);

我需要:

SpreadsheetsResource.BatchUpdateRequest Deletion = new SpreadsheetsResource.BatchUpdateRequest(service, DeleteRequest, SpreadsheetID);
Deletion.Execute();

我一想到这一切,一切都顺利完成.在查看文档和对象资源管理器时,我只是不关注正确的事情.

标签:c,google-sheets,google-sheets-api
来源: https://codeday.me/bug/20190623/1266990.html