【发布时间】:2012-12-04 12:21:52
【问题描述】:
我有一个使用 Azure 网站预览运行的 MVC4 项目。
我的问题是,当我将网站部署到 azure 时,我无法将 blob 上传到我的 blob 存储容器中,但是当我在本地调试时上传工作正常。
这是我在部署时得到的异常和堆栈跟踪,我尝试上传到容器:
找不到有效的帐户信息组合。在 Microsoft.WindowsAzure.Storage.CloudStorageAccount.b__0(字符串错误)在 Microsoft.WindowsAzure.Storage.CloudStorageAccount.TryParse(字符串 s, CloudStorageAccount& accountInformation,Action`1 错误)在 Microsoft.WindowsAzure.Storage.CloudStorageAccount.Parse(字符串 连接字符串)在 MyProj.Controllers.ImageController.Upload(ImageViewModel 模型)
特别是根据堆栈跟踪,它是失败的 .Parse 方法。
我用来连接到 blob 存储的代码直接来自 azure how-to 文档:
string connectionString = ConfigurationManager.ConnectionStrings["StorageConnectionString"].ConnectionString;
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(connectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
再次,当我在我的开发盒上本地运行时,这工作正常,我可以毫无问题地成功上传。然而,它在部署时给了我这个错误,我尝试做同样的事情。
我猜我的 storageConnectionString 在网络部署发布过程中被弄乱了,但我不确定如何解决这个问题?
【问题讨论】:
-
将您的存储连接字符串存储在 AppSettings 中,而不是 ConnectionStrings 部分。而且,在此处粘贴实际的连接字符串将有助于我们为您提供帮助(您可以将 *** 用作帐户密钥)。
-
好的,我已经将连接字符串移到 AppSettings 中,现在可以正常工作了。奇怪!感谢您的帮助:)
-
那么,@astaykov - 转发作为答案怎么样,所以 oTomo 可以这样标记... :)
-
这修复了错误有点奇怪。最后
CloudStorageAccount.Parse是用相同的连接字符串调用的,所以它应该可以正常工作......
标签: c# azure connection-string azure-blob-storage