0
IQClient client = Intuit.QuickBase.Client.QuickBase.Login("username", "pwd");
IQApplication app = client.Connect(applicationId, token);
Intuit.QuickBase.Client.IQTable rtable = app.GetTable(sTableID);`

我正在asp.net 中创建一个Web 应用程序。我需要从 quickbase 获取数据来填充我的 GridView。我正在使用 Quickbase API。上面的代码检索表,但记录值始终为 0。我做错了什么还是有其他方法可以做到这一点?

4

1 回答 1

1

要获取表中的所有记录,您可以按照以下站点中的示例进行操作: https ://code.intuit.com/sf/wiki/do/viewPage/projects.quickbase_c_sdk/wiki/HomePage 。

using System;
using Intuit.QuickBase.Client;

namespace MyProgram.QB.Interaction
{
    class MyApplication
    {
        static void Main(string[] args)
        {
            var client = QuickBase.Client.QuickBase.Login("your_QB_username", "your_QB_password");
            var application = client.Connect("your_app_dbid", "your_app_token");
            var table = application.GetTable("your_table_dbid");
            table.Query();

            foreach(var record in table.Records)
            {
               Console.WriteLine(record["your_column_heading"]);
            }
            client.Logout();
        }
    }
}

要使用已构建的 C# API 进行特定查询,您可以执行以下操作:

var querystring1 = new QueryStrings(FieldID,ComparisonOperator.GTE,value,LogicalOperator.AND);
var querystring2 = new QueryStrings(FieldID, ComparisonOperator.XEX, value, LogicalOperator.NONE);

然后

    var query = new Query();
query.Add(querystring1);
query.Add(querystring2);
table.Query(query, new[] { 1,2,3,4}, new[] { 1,2});

第二个参数是您想要的列的字段 ID,第三个参数是用于对记录进行排序的字段 ID。

在您的情况下,我只会执行循环并将所有记录添加到集合中。然后您可能会使用 LINQ 或仅使用列标题来遍历所有记录。

这是我获取特定数据的方式:

foreach(var record in table.Records)
            {
                var row = new String[8];
                row[0] = record["Column Name"];
                row[1] = record["Column Name"];
                row[2] = record["Column Name"];
                row[3] = record["Column Name"];
                row[4] = record["Column Name"];
                row[5] = record["Column Name"];
                row[6] = record["Column Name"];
                row[7] = record["Column Name"];
                list.Add(row);//This is a List<string[]> collection. But use what you want
            }
于 2012-08-21T12:31:50.367 回答