当我尝试从Azure网站在新的Azure存储帐户中创建新表时,收到以下错误。当我尝试在本地机器上进行操作时,它会起作用。当我使用旧的Azure存储帐户时,它也可以工作。
System.AggregateException未由用户代码处理
HResult=-2146233088消息=出现一个或多个错误
Source=mscorlib StackTrace:位于System.Threading.Tasks.Task.SthrowIfExceptional(布尔值包括TaskCanceledExceptions(位于System.Threading.Tasks.Task1.GetResultCore(Boolean waitCompletionNotification) at System.Threading.Tasks.Task
1.get_Result((位于MyProject.Data.Repositories.MatchRepository.ctor(CloudStorageAccountstorageAccount(D: \home\site\approt\src\MyProject.Data\Repository\MatchRepository.cs:line15位于MyProject.Startup.ConfigureStorageRepositoryAndServices(IServiceCollectionservices,CloudStorageAccount storageAccount(D: \home\site\approt\src\MyProject\Startup.cs:line 98在D:\home\site\approt\src\MyProject\Startup.cs:line 86
中的MyProject.Startup.ConfigureServices(IServiceCollection服务(内部异常:错误代码=-2147217005HResult=-2147217005消息=403
服务器无法对请求进行身份验证。制作确保Authorization标头的值正确形成,包括签名
初级
0d907af5-0002-0117-126c-ea972b0000002015年9月8日,星期二19:31:47GMT 2015年9月8日星期二19:31:43GMT 2015年9月8日星期二19:31:47 GMT身份验证失败
服务器无法对请求进行身份验证。确保Authorization标头的值正确形成,包括签名请求ID:0d907af5-0002-0117-126c-ea972b000000时间:2015-09-08T19:31:46.4165753Z
StorageException-2146233088意外的响应代码,应为:OK或NotFound,收到:ForbiddenMicrosoft.WindowsAzure.Storage位于Microsoft.WindowsAzure.Storage.Core.Executor.Executor。<ExecuteAsyncInternal>d__41.MoveNext()</StackTrace> </ExceptionInfo> </RequestResult> Source=Microsoft.WindowsAzure.Storage StackTrace: at Microsoft.WindowsAzure.Storage.Core.Executor.Executor.<ExecuteAsyncInternal>d__4
1.MoveNext((---从引发异常的前一位置开始的堆栈结尾跟踪---在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务(在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务(位于Microsoft.WindowsAzure.Storage.Table.CloudTable.<>c_DisplayClass51_0。<b_0>d.移动下一个((---从引发异常的前一位置开始的堆栈结尾跟踪---在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务(在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务(位于Microsoft.WindowsAzure.Storage.Table.CloudTable.<>c_DisplayClass41_0。<b_0>d.移动下一个((---从引发异常的前一位置开始的堆栈结尾跟踪---在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务(在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务(位于System.Runtime.CompilerServices.TaskAwaiter1.GetResult() at MyProject.Data.TableRepository.<CreateTableAsync>d__13.MoveNext() in D:homesiteapprootsrcMyProject.DataCommonTableRepository.cs:line 29 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter
1.GetResult((位于MyProject.Data.Repositories.MatchRepository.d_2.MoveNext((在里面D: \home\site\approt\src\MyProject.Data\Repository\MatchRepository.cs:line20内部异常:HResult=-2146233088Message=意外的响应代码,应为:OK或NotFound,收到:Forbidden源=Microsoft.WindowsAzure.StorageStackTrace:位于Microsoft.WindowsAzure.Storage.Core.Executor.Executor.d_4`1.MoveNext((内部异常:
您使用管理键的方式似乎不对。
web.config:
<configuration>
<appSettings>
<add key="StorageConnectionString" value="DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=nYV0gln9fT7bvY+rxu2iWAEyzPNITGkhM88J8HUoyofpK7C8fHcZc2kIZp6cKgYRUM74lHI84L50Iau1+9hPjB==" />
</appSettings>
</configuration>
c#代码:
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
ConfigurationManager.AppSettings["StorageConnectionString"]);
来源:
https://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-tables/