Azure存储将Blob解析为表

时间:2015-05-18 01:07:30

标签: azure azure-storage azure-storage-blobs azure-webjobs azure-table-storage

我对WebJobs真的很陌生,而且我正在努力寻找看似微不足道的事情。我有一个名为" mydatastorage"的存储帐户,以及一个名为" mydatacontainer"的容器。我一直在网上搜索一周,试图做以下基本情景:

我有大量的blob(已存储在Azure中)是html文件。我编写了一些代码,可以使用html字符串并将其转换为TableEntity。然后我想将TableEntity保存到表中,并且可以将#34; mydatatable&#34 ;.看来我可以使用function fatal_error_shutdown() { $last_error = error_get_last(); if ( error_reporting() & $last_error['type'] ) call_user_func_array( 'exception_error_handler', $last_error ); } register_shutdown_function( 'fatal_error_shutdown' ); 属性来简化将实体保存到表中的过程,或者在方法调用中将其手动保存到表中。我的问题是让方法签名正确,然后如何让blob进入该方法。我对[Table][Blob]等所有属性以及[BlobTrigger]等类型以及使用它们的正确方式(以及何时)感到有些困惑。如果有人知道一个解释类似情况的教程,我很乐意了解它。

1 个答案:

答案 0 :(得分:5)

有关使用BlobTrigger的信息,请尝试this page。有关WebJobs SDK的所有最新文档都可以在这个主要[资源页面}(http://azure.microsoft.com/en-us/documentation/articles/websites-webjobs-resources)找到。

这是一个指向正确方向的示例。您可以设置BlobTrigger以在添加blob时触发,并使用TableAttribute绑定到输出表。 ICollector<T>绑定将为您添加到其中的任何实例添加表实体。您可以在上述资源链接中找到有关表绑定的更多选项。希望这会有所帮助。

public static void ImportHtmlBlob(
    [BlobTrigger("input/{name}")] Stream input,
    string name,
    [Table("yourtable")] ICollector<YourTableType> output)
{
    ...
}