无法在Azure开发存储上创建表

时间:2014-03-02 14:17:51

标签: c# azure .net-4.5 azure-storage azure-table-storage

我无法创建一个名为" people"在我的本地机器上。我已经通过启动" Windows Azure存储模拟器 - v2.2"启动了Azure模拟器。我从NuGet中取出了最新的Azure客户端库,版本为3.0.3.0。 .NET版本是4.5,我的VS是2012 Ultimate。我在x64系统上从Windows 8.1运行此代码。

这是我的测试代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.WindowsAzure;
using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure.Storage.Table;

namespace AzureTablesTest
{
    class Program
    {
        static void Main(string[] args)
        {
            // Retrieve the storage account from the connection string.
            CloudStorageAccount storageAccount = CloudStorageAccount.Parse("UseDevelopmentStorage=true");

            // Create the table client.
            CloudTableClient tableClient = storageAccount.CreateCloudTableClient();

            // Create the table if it doesn't exist.
            CloudTable table = tableClient.GetTableReference("people");
            table.CreateIfNotExists();
        }
    }
}

我通过检查emualtor GUI确保模拟器正在运行:

Azure Emulator GUI

当我从VS运行测试代码时,会抛出此异常:

Azure Storage Exception with code line reference

奇怪的是,当我打开Azure Storage Explorer时,创建一个开发帐户,我可以创建表和实体。当我从模拟器GUI重置表时,我可以看到存储资源管理器也被清空(刷新后)。我试图通过资源管理器创建一个表,看看上面用我的简单控制台程序创建表时是否有任何错误,我得到了同样的错误。所以我无法使用控制台程序读取或写入,但我可以使用资源管理器。

有人知道为什么我不能通过简单的控制台程序创建表,但为什么我可以通过Azure存储资源管理器?我甚至试图以VS管理员的身份运行上面列出的控制台程序,这给了我完全相同的错误,如上所示。

更新 安装存储模拟器2.2.1预览,因为此链接描述了Azure 400 Bad Request on every request,解决了我的问题。

1 个答案:

答案 0 :(得分:1)

安装存储模拟器2.2.1预览,因为此链接描述了Azure 400 Bad Request on every request,解决了我的问题。