仅在部署Web应用程序时引发错误

时间:2019-07-08 19:30:42

标签: asp.net azure azure-web-app-service azure-blob-storage

我的ASP.NET Web应用程序获取图像文件,并将其作为BLOB上载到Azure存储。在调试和发布模式下本地运行时,它工作正常。通过Azure Web应用程序部署该应用程序时,会发生此问题。不幸的是,由于我无法获取堆栈跟踪信息,所以我无法完全弄清是什么原因导致了该问题,但是我唯一能想到的是Azure存储出于安全原因将其阻止,但是它被设置为允许来自Azure服务的调用,所以我以为会允许的。

这是网站要求上传图片的功能。这是操作中唯一调用的函数,因此必须在此处引发异常。

public async Task<bool> UploadFile(IFormFile file, string fileName, Vendor vendor)
    {
        string storageConnectionString = _config.GetConnectionString("Storage");
        CloudStorageAccount storage = CloudStorageAccount.Parse(storageConnectionString);
        CloudBlobClient blobClient = storage.CreateCloudBlobClient();
        string nameFormatted = vendor.Name.Replace(" ", "").ToLower();
        var container = blobClient.GetContainerReference(nameFormatted);
        await container.CreateIfNotExistsAsync();
        using (var stream = file.OpenReadStream())
        {
            var blobRef = container.GetBlockBlobReference(fileName);
            await blobRef.UploadFromStreamAsync(stream);
        }
        return true;
    }

这是部署时引发的错误。 Eror

1 个答案:

答案 0 :(得分:1)

尽管我看不到代码中的任何明显问题,但实际上您可以通过Visual Studio在Azure WebApp上远程调试应用程序。

三个官方博客介绍了如何在Azure WebApp上进行远程调试。

  1. Introduction to Remote Debugging on Azure Web Sites
  2. Remote debug your Azure App Service Web App
  3. Troubleshoot an app in Azure App Service using Visual Studio

您只需要按照下图在Azure门户上启用App Service的Debugging功能,然后就可以按照上面的博客进行操作。

enter image description here

希望有帮助。