是否可以从Azure网站访问Azure中的表存储

时间:2012-11-28 10:12:43

标签: azure azure-table-storage

我想从Azure网站(而不是Cloud Service)使用Azure表存储服务。有关如何使用Node.js执行此操作的指南,但我喜欢使用.NET MVC。

.NET的所有指南都讨论了如何将Azure存储连接信息存储在ServiceConfiguration中(就像在Cloud Service中一样),但在Azure网站中我没有这个(只是一个Web.config)。如果我没有弄错的话,如果不在Azure模拟器中运行,也不可能使用RoleEnvironment(用于从ServiceConfiguration读取),而我不会在AzureWeb站点中执行此操作。

是否可以从Azure网站访问表存储,如果可以,我该如何连接到它?

我看过this question但看起来并不相似。

2 个答案:

答案 0 :(得分:5)

您只需从web.config获取连接字符串并解析它(请注意,您也可以使用CloudConfigurationManager.GetSetting方法):

var connectionString = ConfigurationManager.AppSettings["myStorageAccountConnectionString"];
var storageAccount = CloudStorageAccount.Parse(connectionString);
var tableClient = storageAccount.CreateCloudTableClient();

在您的web.config中,您需要添加如下连接字符串:

  <appSettings>
    <add key="myStorageAccountConnectionString" value="DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=fazfazefazefzeefazeefazfazefazef"/>
  </appSettings>

答案 1 :(得分:1)

简短回答:是的。表服务有REST API,这意味着您可以从任何可以通过http进行通信的客户端平台访问它。

谷歌搜索然后产生大量的例子:

http://azure.snagy.name/blog/?p=294

http://blogs.msdn.com/b/rickandy/archive/2012/09/20/azure-table-storage.aspx

您可以使用MVC中的CloudTableClient:即使大多数示例都是针对云服务的,您也可以轻松调整它们以从web.config或任何其他来源获取连接数据。操作方法文档在此处:https://www.windowsazure.com/en-us/develop/net/how-to-guides/table-services/