1

これは古いドキュメントのケースだと思いますが、より最近の例を見つけることができません。

次のコードを使用すると、Web ジョブの初期化で例外が生成され、「保留中の再起動」ループでスタックします。

public static void GenerateExcelFile(
        [QueueTrigger("excel")] JobFile message,
        Guid Id,
        [Table("JobFile")] IDictionary<Tuple<string, string>, object> table,            
    {
        //More Code
    }

「object」を「JobFile」に置き換えると、同じエラーが発生します。これはかなり長いスタック トレースなので、ここではその先頭のみを投稿しました。ILSpy を使用すると、これは機能しないように見えるため、チュートリアルが作成されてからこの機能が削除されたかどうかはわかりません。

[09/13/2014 11:07:53 > be5c40: ERR ] Unhandled Exception:
        Microsoft.Azure.WebJobs.Host.Indexers.FunctionIndexingException:
            Error indexing method 'GenerateExcelFile' ---> 
            System.InvalidOperationException: Can't bind Table to type
           'System.Collections.Generic.IDictionary`2[System.Tuple`2[System.String,System.String],System.Object]'.
[09/13/2014 11:07:53 > be5c40: ERR ]    at Microsoft.Azure.WebJobs.Host.Tables.TableAttributeBindingProvider.TryCreateAsync(BindingProviderContext context)
[09/13/2014 11:07:53 > be5c40: ERR ]    at Microsoft.Azure.WebJobs.Host.Bindings.CompositeBindingProvider.<TryCreateAsync>d__0.MoveNext()

SDK の 0.5 ベータ版と 0.6 ベータ版でこれを試しました。

4

2 に答える 2

1

あなたが指しているドキュメントは古くなっています。テーブルの IDictionary バインディングが削除されました。挿入または置換には ICollector バインディング、読み取りには TableEntity/ IQueryable バインディング、エンティティの変更には CloudTable バインディングを使用できます。次のサンプルは、テーブルの使用方法を示してい ます https://github.com/Azure/azure-webjobs-sdk-samples/tree/master/BasicSamples/TableOperations https://github.com/bradygaster/siteMonitR

于 2014-09-13T20:55:24.300 に答える
0

ICollector バインディングの使用方法を見つけるためにしばらく検索する必要があったので、共有したいと思いました。Microsoft.Azure.WebJobs の新しいリリースに属しているように見えるので、バージョン 0.6.0-beta を使用していることを確認してください。

あなたの場合、それは次のようなものになります

public static void GenerateExcelFile(
    [QueueTrigger("excel")] JobFile message,
    Guid Id,
    [Table("JobFile")] ICollector<JobFile> tableBinding          
{
    //More Code
}

public class JobFile
{
    public string PartitionKey { get; set; }
    public string RowKey { get; set; }
    public string Name { get; set; }
}

PS私はこれをテストしていません!:P

詳細はリンク先をご覧ください

http://blogs.msdn.com/b/webdev/archive/2014/09/12/announce-the-0-6-0-beta-preview-of-microsoft-azure-webjobs-sdk.aspx

于 2014-09-16T14:30:47.173 に答える