【问题标题】:azure blob storage getting error - the specified resource does not existazure blob 存储出现错误-指定的资源不存在
【发布时间】:2019-04-03 05:43:44
【问题描述】:

我有一个 azure blob 存储容器 url,我正在尝试上传文件

这是代码,

try
        {
            string blobContainerUri = "https://upload.blob.core.windows.net/381a9218-cd78-4dc1-b9a2-f1ff4f952b57";
            CloudBlobContainer blobContainer = new CloudBlobContainer(new Uri(blobContainerUri));
            CloudBlockBlob blob = blobContainer.GetBlockBlobReference("sample.txt");
            string sampleContent = "This is sample text.";
            using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(sampleContent)))
            {
                blob.UploadFromStream(ms);
            }
        }
        catch(Exception ex)
        {
            Console.WriteLine(ex.Message.ToString());
            Console.WriteLine(ex.StackTrace.ToString());
        }

现在我遇到了错误,我需要同时使用存储帐户访问密钥吗?

The specified resource does not exist.
   at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.<ExecuteAsync>d__1`1.MoveNext() in C:\Program Files (x86)\Jenkins\workspace\dotnet-split-common\Lib\ClassLibraryCommon\Core\Executor\Executor.cs:line 82
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.<>c__DisplayClass0_0`1.<ExecuteSync>b__0() in C:\Program Files (x86)\Jenkins\workspace\dotnet-split-common\Lib\ClassLibraryCommon\Core\Executor\Executor.cs:line 41
   at Microsoft.WindowsAzure.Storage.Core.Util.CommonUtility.RunWithoutSynchronizationContext[T](Func`1 actionToRun) in C:\Program Files (x86)\Jenkins\workspace\dotnet-split-common\Lib\Common\Core\Util\CommonUtility.cs:line 407
   at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.ExecuteSync[T](RESTCommand`1 cmd, IRetryPolicy policy, OperationContext operationContext) in C:\Program Files (x86)\Jenkins\workspace\dotnet-split-common\Lib\ClassLibraryCommon\Core\Executor\Executor.cs:line 40
   at Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob.UploadFromStreamHelper(Stream source, Nullable`1 length, AccessCondition accessCondition, BlobRequestOptions options, OperationContext operationContext) in C:\Program Files (x86)\Jenkins\workspace\dotnet-split-blob\Lib\ClassLibraryCommon\Blob\CloudBlockBlob.cs:line 382
   at Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob.UploadFromStream(Stream source, AccessCondition accessCondition, BlobRequestOptions options, OperationContext operationContext) in C:\Program Files (x86)\Jenkins\workspace\dotnet-split-blob\Lib\ClassLibraryCommon\Blob\CloudBlockBlob.cs:line 272
   at ConsoleApp4.Program.Main(String[] args) in c:\users\h190733\source\repos\ConsoleApp4\ConsoleApp4\Program.cs:line 23

【问题讨论】:

    标签: c# azure-blob-storage


    【解决方案1】:

    您应该使用 CloudBlobContainer 实例修改您的代码。喜欢

    var uri = new Uri("https://upload.blob.core.windows.net/381a9218-cd78-4dc1-b9a2-f1ff4f952b57")
    var storage = new StorageCredentials("your account name", "your storage key");
    
    CloudBlobContainer blobContainer = new CloudBlobContainer(uri, storage);
    

    我希望它会起作用。

    【讨论】:

      猜你喜欢
      • 2021-06-10
      • 1970-01-01
      • 2011-06-21
      • 2015-11-11
      • 2017-03-02
      • 2020-01-06
      • 2021-10-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多