C# 将Smartsheet数据导入Gridview

C# 将Smartsheet数据导入Gridview,c#,asp.net,json,gridview,smartsheet-api,C#,Asp.net,Json,Gridview,Smartsheet Api,我对Smartsheet和使用c#编程非常陌生。大多是初学者,试图使用visual studio 2013将我的web应用程序与Smartsheet集成。我目前正努力让gridview控件填充Smartsheet返回的数据(json格式)。到目前为止,我已经能够获得包含以下内容的json字符串: { "id":4705121406871428, "name":"Distributors", "version":3, "totalRowCount":2, "acc

我对Smartsheet和使用c#编程非常陌生。大多是初学者,试图使用visual studio 2013将我的web应用程序与Smartsheet集成。我目前正努力让gridview控件填充Smartsheet返回的数据(json格式)。到目前为止,我已经能够获得包含以下内容的json字符串:

{  
   "id":4705121406871428,
   "name":"Distributors",
   "version":3,
   "totalRowCount":2,
   "accessLevel":"OWNER",
   "effectiveAttachmentOptions":[  
      "DROPBOX",
      "GOOGLE_DRIVE",
      "BOX_COM",
      "FILE"
   ],
   "ganttEnabled":false,
   "dependenciesEnabled":false,
   "permalink":"https://app.smartsheet.com/b/home?lx=xlJ7OtqknyOndgOnClj4qg",
   "createdAt":"2015-06-22T16:55:02+10:00",
   "modifiedAt":"2015-06-23T14:17:47+10:00",
   "columns":[  
      {  
         "id":3238895438587780,
         "index":0,
         "title":"id",
         "type":"TEXT_NUMBER",
         "primary":true,
         "width":150
      },
      {  
         "id":7742495065958276,
         "index":1,
         "title":"distName",
         "type":"TEXT_NUMBER",
         "width":150
      },
      {  
         "id":2112995531745156,
         "index":2,
         "title":"agency",
         "type":"TEXT_NUMBER",
         "width":150
      },
      {  
         "id":6616595159115652,
         "index":3,
         "title":"profile",
         "type":"TEXT_NUMBER",
         "width":150
      }
   ],
   "rows":[  
      {  
         "id":3999757174630276,
         "rowNumber":1,
         "expanded":true,
         "createdAt":"2015-06-23T11:05:26+10:00",
         "modifiedAt":"2015-06-23T14:17:47+10:00",
         "cells":[  
            {  
               "columnId":3238895438587780,
               "type":"TEXT_NUMBER",
               "value":1.0,
               "displayValue":"1"
            },
            {  
               "columnId":7742495065958276,
               "type":"TEXT_NUMBER",
               "value":"ABS",
               "displayValue":"ABS"
            },
            {  
               "columnId":2112995531745156,
               "type":"TEXT_NUMBER",
               "value":"ShedsRus",
               "displayValue":"ShedsRus"
            },
            {  
               "columnId":6616595159115652,
               "type":"TEXT_NUMBER",
               "value":"OK",
               "displayValue":"OK"
            }
         ]
      },
      {  
         "id":8503356802000772,
         "rowNumber":2,
         "siblingId":3999757174630276,
         "expanded":true,
         "createdAt":"2015-06-23T11:05:26+10:00",
         "modifiedAt":"2015-06-23T14:17:47+10:00",
         "cells":[  
            {  
               "columnId":3238895438587780,
               "type":"TEXT_NUMBER",
               "value":2.0,
               "displayValue":"2"
            },
            {  
               "columnId":7742495065958276,
               "type":"TEXT_NUMBER",
               "value":"Barns",
               "displayValue":"Barns"
            },
            {  
               "columnId":2112995531745156,
               "type":"TEXT_NUMBER",
               "value":"BarnsRus",
               "displayValue":"BarnsRus"
            },
            {  
               "columnId":6616595159115652,
               "type":"TEXT_NUMBER",
               "value":"OK",
               "displayValue":"OK"
            }
         ]
      }
   ]
}
此字符串似乎包含太多信息,如id和类型等。。。 我只需要我的列名和它们的关联数据。 然后,将此信息显示为gridview控件

这是我的json请求:

        string sURL;
        sURL = "https://api.smartsheet.com/1.1/sheet/4705121406871428";

        WebRequest wrGETURL;
        wrGETURL = WebRequest.Create(sURL);
        wrGETURL.ContentType = "application/json";
        wrGETURL.Method = "GET";
        wrGETURL.Headers["Authorization"] = "Bearer ******************";

        Stream objStream;
        objStream = wrGETURL.GetResponse().GetResponseStream();

        StreamReader objReader = new StreamReader(objStream);

        string jsonResult = objReader.ReadToEnd();

如果有人能为我提供一些指导,让这个工作,这将是非常感谢…请原谅我对这个话题完全无知…完全新手在这里!谢谢。

在Smartsheet API的响应中有一个
columns
对象,它由工作表中的列数组组成。循环此数组以获取列标题和列ID

然后,遍历
对象并在每行上循环。对于每一行,您需要循环该行的
单元格数组
,并输出
显示值
。确保单元格的每个
columnId
与正在打印的列的
id
匹配,因为如果Smartsheet中有空白单元格,Smartsheet API将不会返回任何单元格对象


您可以找到有关Smartsheet API的更多信息。而且,如果您还没有这样做,我还建议您查看Smartsheet API的

谢谢你的评论!我试试看。