我正在开发一个 webjob 来将项目放入队列 (C#)。我是新手,正在学习一些教程,但我不知道如何为本地开发存储创建 CloudStorageAccount 的实例。在我的配置文件中,我有这个

<add name="AzureWebJobsStorage" connectionString="UseDevelopmentStorage=true;" />


在我的 C# 方法中,我想创建一个 CloudStorageAccount 的实例,就像这样
var account = new CloudStorageAccount(new StorageCredentials(accountName, accountKey), true);
accountNameaccountKey 应该用于本地开发存储吗?

最佳答案


Account name: devstoreaccount1
Account key: Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==

引用:https://docs.microsoft.com/en-us/azure/storage/storage-use-emulator

但是,您将无法使用以下代码,因为存储模拟器仅适用于 HTTP 并监听自定义端口。
var account = new CloudStorageAccount(new StorageCredentials(accountName, accountKey), true);

正确的做法是像下面这样:
        var storageCredentials = new StorageCredentials("devstoreaccount1", "Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==");
        var blobEndpoint = new Uri("http://127.0.0.1:10000");
        var queueEndpoint = new Uri("http://127.0.0.1:10001");
        var tableEndpoint = new Uri("http://127.0.0.1:10002");
        var acc = new CloudStorageAccount(storageCredentials, blobEndpoint, queueEndpoint, tableEndpoint, null);

或者为简单起见,您可以简单地执行以下操作:
        var acc = CloudStorageAccount.Parse("UseDevelopmentStorage=true");

关于azure - 使用 DevelopmentStorage 的 CloudStorageAccount 凭据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45348933/

10-11 10:22