【发布时间】:2017-01-06 07:50:01
【问题描述】:
我无法使用新的 SpreadSheet API 在 GoogleDocs 中创建电子表格,因为现在支持它而不是使用 Google Drive API。
我发现的所有示例都用于创建和修改表格,而不是主电子表格。
static string[] Scopes = { SheetsService.Scope.Spreadsheets };
var credential = GoogleWebAuthorizationBroker.AuthorizeAsync(new ClientSecrets {
ClientId = clientId, // FROM JSON
ClientSecret = clientSecret // FROM JSON
},
Scopes, Environment.UserName, CancellationToken.None,
new FileDataStore("xxIDxx.GoogleDrive.Auth.Store")).Result;
var service = new SheetsService(new BaseClientService.Initializer() {
HttpClientInitializer = credential,
ApplicationName = "Google Sheets API Project",
});
string SpreadSheetID = "AVeryLongAndRandomStringID";
Spreadsheet SpSheet = new Spreadsheet();
SpSheet.Properties = new SpreadsheetProperties();
SpSheet.SpreadsheetId = SpreadSheetID;
SpSheet.Properties.Title = "I HATE THIS SPREADSHEET";
Sheet MySheet = new Sheet();
MySheet.Properties = new SheetProperties();
MySheet.Properties.Title = "MySheet";
MySheet.Properties.SheetId = 34213312;
MySheet.Properties.SheetType = "GRID";
var SheetSet = new List<Sheet>();
SheetSet.Add(MySheet);
SpSheet.Sheets = SheetSet;
var MyNewSpreadSheet = service.Spreadsheets.Create(SpSheet).Execute();
谢谢!
更新:
小版本“var MyNewSpreadSheet”确实有效(我的最后一次尝试也有效)但是...我没有意识到它将文档保存在 MY googleDrive 中,而不是我客户的帐户中。 p>
我试图完成的是创建一个应用程序,任何拥有谷歌帐户的人都可以在“存储库”帐户中创建或更改电子表格文档。
文件“client_secret.json”是从我客户的帐户生成的,我不知道为什么代码会在登录的 gmail 帐户上创建电子表格。
有什么想法吗? 谢谢!
【问题讨论】:
标签: c# .net google-sheets google-docs-api