2

我正在使用从 smartsheets 生成的 JSON 字符串,目的是选择特定值并将它们添加到 sql 数据库中。因为这是由用户设置的,所以 smartsheet 的结构对于放入 SQL 数据库并不理想,所以我试图找到一种方法来告诉程序选择要放入数据库的特定值。用户所做的是在 smartsheets 中将要放入数据库的单元格变为绿色。我得到的 JSON 文件只显示 columnID、类型、值和显示值。我不确定这是否可能,但我想知道是否有办法检测他是否选择了该单元格的颜色为绿色?

也接受其他建议。我正在考虑添加一个额外的列,表示输入,所以我知道需要输入该行中的那组列,但我想我可能会看到上述选项在使用 REST API 的智能表中是否可行。目前这是(基本上)我的代码。

smartsheetToJSON 类。

        Console.WriteLine("Requesting data from smartsheets");
        //This is the GET request component. Depends on what is in the URL as to what you get back. 
        HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create("https://api.smartsheet.com/1.1/sheet/8385518611261316");
        httpWebRequest.ContentType = "application/json";
        httpWebRequest.Accept = "*/*";
        httpWebRequest.Method = "GET";
        httpWebRequest.Headers.Add("Authorization", "Bearer " + authorisation);

        Console.WriteLine("Reading data to JSON");
        HttpWebResponse httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
        string responseString = new StreamReader(httpResponse.GetResponseStream()).ReadToEnd();
        return responseString;

这是目前在静态主要。

        smartsheetToJSON getSheetData = new smartsheetToJSON();
        string jsonString = getSheetData.getSheet();
        Console.WriteLine("Printing JSON");
        JObject rss = JObject.Parse(jsonString);
        Console.WriteLine(jsonString);
4

1 回答 1

4

将此查询字符串参数添加到您的 URL:?include=format

当您这样做时,返回的单元格将包含数字列表形式的“格式”属性。以下是有关如何理解该列表的文档:

https://www.smartsheet.com/developers/api-documentation#h.up1zf3ui4dyr

它不是世界上最方便解析的表示,因为它旨在优化包含大量单元格的工作表的有效负载大小。但它确实为您提供了所需的信息。

我试了一下,当我给工作表中的单元格设置绿色背景色时,它们包含以下格式:“,,,,,,,,,30,,,,,,”。您可能想要尝试找到您正在寻找的确切格式值。

于 2015-03-06T23:47:49.103 回答