2012-05-07 12 views
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アプリケーションを作成しています。私は、私のGridViewにデータを入れるためにquickbaseからデータを取得する必要があります。私はQuickbase APIを使用しています。上記のコードはテーブルを取得しますが、レコードの値は常に0です。何か間違っているか、これを行うための他の方法はありますか?asp.netアプリケーションでQuickbaseからレコードを取得するには?

答えて

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}); 

2番目のパラメータは、あなたが列のフィールドIDです3番目のパラメータはレコードをソートするためのフィールド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 
      } 
関連する問題