使用Microsoft Graph 5.x在C#控制台程序中向Excel添加行的语法问题
修复Microsoft Graph添加Excel表格行的代码语法错误
你贴的这段微软示例代码里的核心问题是泛型类型参数使用错误:List<List<1>>这种写法不合法,泛型尖括号里必须填C#的合法类型(比如object、int),而不是数字字面量。
正确的代码写法
如果要添加的都是数值类型,或者需要兼容多种单元格值类型,推荐用object作为泛型类型,代码修正如下:
var requestBody = new microsoft.Graph.Drives.Item.Items.Item.Workbook.Tables.Item.Rows.Add.AddPostRequestBody { Index = 5, Values = new List<List<object>> { new List<object> { 1, 2, 3, }, new List<object> { 4, 5, 6, }, }, }; var result = await graphClient.Drives["{drive-id}"].Items["{driveItem-id}"].Workbook.Tables["{workbookTable-id}"].Rows.Add.PostAsync(requestBody);
关键修正点
- 把
List<List<1>>、new List<1>这类错误写法,改成List<List<object>>和new List<object> - 如果确定所有添加的单元格值都是整数,也可以用
List<List<int>>,写法更简洁:Values = new List<List<int>> { new List<int> {1,2,3}, new List<int> {4,5,6} }
替换代码里的{drive-id}、{driveItem-id}、{workbookTable-id}为实际的ID值后,这段代码就能正常运行了。
内容的提问来源于stack exchange,提问作者José Carreira
相关产品推荐
相关产品推荐

