2016-12-29 12 views
0

Azure Mobile App Easyテーブルのすべてのデータを読み取ることができるAzure関数への入力バインディングを設定する方法を理解しようとしています。私は何時間も探していて、私が見つけることができるすべてのドキュメントを読んできました。Azure関数読み込みAzure Mobile App簡単なテーブルデータ

https://docs.microsoft.com/en-us/azure/azure-functions/functions-triggers-bindingsのAzure関数バインディングドキュメントは、モバイルアプリケーション用のバインディングをセットアップできることを示しています。これはテーブルにアクセスするためのものだと私は考えています。モバイルアプリで(または私は間違っていますか?)関数エディタの積分セクションでバインディングを設定するときにもヘルパーオプションがあります。しかし、バインディングを設定するときは、レコードIDフィールドは必須ですが、レコードIDを指定したくないので、テーブル内のすべてのデータを読み取ることができます。これはどうすればいいですか?

最終的には、テーブルのデータが更新(追加、更新、削除)されるたびに機能をトリガーすることができます。関数が実行されるときに、私はすべてのデータを読み込み、それを使って何かをしたい。私はこれをカバーするトリガオプションを見つけることができないので、私はこれを予定された機能にしなければならないと思う - 良い方法があるのだろうか?ここで

はバインディングです:

{ 
    "type": "mobileTable", 
    "name": "inputRecord", 
    "tableName": "Alerts", 
    "id": "{itemId}", 
    "connection": "APP_URL", 
    "direction": "in" 
} 

それは結合が私の場合には必要ですが、必須ではありませんでのIDプロパティです。それを機能させるために私はそこに何を置くのですか?

答えて

1

Easy Tableのトリガータイプはまだ組み込まれていません。しかし、Mobile Apps Easy Tablesの最近追加されたwebhooks featureを使用してこのシナリオを達成できます。 HTTPトリガー機能を作成し、その機能を呼び出すようにWebHookを設定します。簡単なテーブルでデータの状態を更新する関数が必要な場合は、output bindingを使用します。

関数のデータとのやりとりがさらに必要な場合は、Mobile AppsクライアントSDKのNuGetパッケージを参照し、MobileServiceClientを使用してデータを読み取る必要があります。ここでは例です:

project.json:

{ 
    "frameworks": { 
    "net46":{ 
     "dependencies": { 
     "Microsoft.Azure.Mobile.Client": "3.0.3" 
     } 
    } 
    } 
} 

run.csx:

using System.Net; 
using Microsoft.WindowsAzure.MobileServices; 

public static async Task<HttpResponseMessage> Run(HttpRequestMessage req, TraceWriter log) 
{ 
    MobileServiceClient client = new MobileServiceClient("https://mymobileappssite.azurewebsites.net"); 
    var results = await client.GetTable("todoitem").ReadAsync(""); 
    log.Info($"Got {results.Count()} record(s).");; 

    return req.CreateResponse(HttpStatusCode.OK, "Hi");  
} 
+0

ポール、ありがとう。別のタックを取って、どのようにしてEasy Tableテーブルの内容を関数から読み取ることができますか?これをトリガされた関数からスケジュールされた関数に移行したいとします。テーブルからレコードを取り出せるように関数を構成するには何が必要ですか? – johnwargo

+0

MobileServiceClientを使ってデモするために私の答えを更新しました –

+0

ありがとうございます。 JavaScript(ノード)の例がありますか? – johnwargo

関連する問題