2010-02-26 113 views

回答

1

您不必爲Azure雲存儲創建連接字符串,通過API訪問此服務(與blob和隊列相同),MS爲此提供了一個soap API和一個REST API。

您應該下載適用於樣本和工具的Windows Azure SDK(如果要在本地進行測試,則使用Azure Fabric),那麼您可以獲得Here

SQL Azure不同,SQL Azure是「雲中的SQL Server」,對於該服務,您只需要一個連接字符串,與普通的SQL Server連接字符串非常相似。

+1

當您使用Azure SDK時,確實會創建一個連接字符串。 – 2013-08-20 16:25:46

+0

@JasonDufair 3 1/2年前,當我回答這個問題時,要訪問Azure Table Services(而不是SQL Azure),所需的只是端點和密鑰。在投票人選之前,你需要看歷史背景。 – 2013-08-20 21:20:50

+0

僅供參考,這是我們當時所做的事情... http://convective.wordpress.com/2010/08/18/examples-of-the-windows-azure-storage-services-rest -api/ – 2013-08-20 21:37:31

8

注意到這一點是因爲它是Google的熱門搜索,並且信息不再是最新的。

您可以通過傳遞給FromConfigurationSetting()的連接字符串來配置CloudStorageAccount

您按照下面建一個配置字符串: http://msdn.microsoft.com/en-us/library/ee758697.aspx

還有就是在IDE中的助手,如果你右擊角色。

1

連接字符串到Azure存儲帳戶:

DefaultEndpointsProtocol=[http|https];AccountName=myAccountName;AccountKey=myAccountKey

例如:

DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=<account-key> 

連接字符串存儲模擬器:

config.xml中

<appSettings> 
     <add key="StorageConnectionString" value="UseDevelopmentStorage=true" /> 
    </appSettings> 

DefaultEndpointsProtocol=http;AccountName=testacc1; 
AccountKey=1gy3lpE7Du1j5ljKiupgKzywSw2isjsdfdsfsdfsdsgfsgfdgfdgfd/YThisv/OVVLfIOv9kQ==; 
BlobEndpoint=http://127.0.0.1:8440/testacc1; 
TableEndpoint=http://127.0.0.1:8440/testacc1; 
QueueEndpoint=http://127.0.0.1:8440/testacc1; 

例:

<connectionStrings>  

    <add name="AzureStorageAccount" connectionString="DefaultEndpointsProtocol=https;AccountName=testdata;Accoun‌​tKey=1gy3lpE7Du1j5ljKiupgKzywSw2isjsdfdsfsdfsdsgfsgfdgfdgfd/YThisv/OVVLfIOv9kQ==;"/> 
    </connectionStrings> 

但有時它不會通過錯誤工作,並將

An unhandled exception of type 'System.FormatException' occurred in Microsoft.WindowsAzure.Storage.dll 

Additional information: No valid combination of account information found. 

,那麼請嘗試用下面的代碼:測試working 100%

var accountName = "test2rdsfdg462"; 
      var keyValue = "1gy3lpE7Du1j5ljKiupgKzywSfsdfdsfsdfsdfsdfsdfsdqGxd7/YThisv/OVVLfIOv9kQ=="; 
      var useHttps = true; 
      var connValid = true; 

      var storageCredentials = new StorageCredentials(accountName, keyValue); 
      var storageAccount = new CloudStorageAccount(storageCredentials, useHttps); 
      var conString = storageAccount.ToString(connValid); 

      CloudStorageAccount sa = CloudStorageAccount.Parse(connString);