2017-07-27 51 views
1

我正在开发一个webjob将项目放入队列(C#)。我新来这个和即时通讯一些教程,但我无法弄清楚我将如何为我的本地开发存储创建一个CloudStorageAccount的实例。在我的配置文件,我有这个CloudStorageAccount凭证使用DevelopmentStorage

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

,并在我的C#的方法我要创造我CloudStorageAccount的实例,这样

var account = new CloudStorageAccount(new StorageCredentials(accountName, accountKey), true); 

又该帐户名和accountKey是为本地发展储存?

回答

3

accountName和accountKey应该为本地开发 存储?

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"); 
+1

我得到它的工作确定使用CloudStorageAccount.Parse( “UseDevelopmentStorage =真”); Eveything工作正常,直到我更新Microsoft.WindowsAzure.Storage到V8.2.1.0我现在得到这个错误无效的存储帐户'devstoreaccount1'。请确保您的凭据是正确的。这是一个已知的问题 ? – proteus

+0

对于具有相同问题的其他用户,请参阅https://stackoverflow.com/questions/45370503/microsoft-windowsazure-storage-update-to-v8-2-1-0-has-broken-my-code。 –

+0

@KristofferJälén请参阅https://stackoverflow.com/a/48658275/6527049 –