如何在 asp.net 应用程序中从快速库获取记录

本文关键字:获取 记录 asp net 应用程序 | 更新日期: 2023-09-27 18:33:32

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 应用程序。我需要从快速库获取数据以填充我的 GridView。我正在使用快速基础 API。上面的代码检索表,但记录值始终为 0。我做错了什么还是有其他方法可以做到这一点?

如何在 asp.net 应用程序中从快速库获取记录

若要获取表中的所有记录,可以按照以下站点上的示例进行操作: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
            }