GetSheet()操作默认返回列类型信息,因此在调用时无需指定任何包含标志。(这就是为什么您在智能感知中没有看到它的选项。)
下面的代码片段展示了如何使用 C# SDK 来检索一个工作表并遍历工作表中的列,打印每列的标题和类型:
// Set the Access Token
Token token = new Token();
token.AccessToken = YOUR_ACCESS_TOKEN;
// Use the Smartsheet Builder to create a Smartsheet
SmartsheetClient smartsheet = new SmartsheetBuilder().SetAccessToken(token.AccessToken).Build();
// Get Sheet
long sheetId = YOUR_SHEET_ID;
Sheet sheet = smartsheet.SheetResources.GetSheet(sheetId, null, null, null, null, null, null, null);
// Examine columns and write Title and Type for each column.
foreach (Column column in sheet.Columns)
{
Response.Write(column.Title + ": " + column.Type.ToString() + "<br/><br/>");
}
请注意,目前 C# SDK 存在一个已知问题(错误)—— Column.Type未填充到 GetSheet() 响应中,仅存在于启用依赖项的项目表中的 3 种特殊列类型:DURATION, PREDECESSOR, ABSTRACT_DATETIME(即开始日期和结束日期)。目前没有解决此问题的 ETA。但是,您可以通过从GitHub下载 C# SDK 源代码并更新ColumnType Enumeration以添加 3 个缺失的枚举值来自行修复它: