我有功能应用程序,可以连接到blob,读取文件内容并将内容发布到API。该功能在从Visual Studio调试时可以完美运行。部署后,我遇到的问题无法从Azure上解决。我可能遇到的错误是:
Exception while executing function: MyFunctionManager
MYFUNCTION.FA.FileManager.BlobContainerManager.GetCloudBlobContainer上的问题ID:System.ArgumentNullException
似乎无法连接并找到Blob存储。在代码中,我使用在local.settings.json中设置的连接字符串获取容器:
public static CloudBlobContainer GetCloudBlobContainer(string blobContainer)
{
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
App.Settings.AzureFileStorageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(blobContainer);
container.CreateIfNotExistsAsync();
return container;
}
任何帮助表示赞赏
谢谢
答案 0 :(得分:2)
local.settings.json
文件仅用于本地开发。
在Azure上运行时,请确保您拥有一个Application Setting,其密钥为AzureFileStorageConnectionString
,并且值为存储帐户的连接字符串。
由于您提到要从“应用程序设置”中获取容器名称,因此您也必须对容器名称进行相同的操作。