Asp.net mvc 4 Azure blob-无法在MVC 4中的blob容器中显示图像存储
问题背景: 我有一个基本的MVC4站点,正在尝试显示一张图片,该图片存储在我的Azure云帐户的blob存储容器中。我将图像Asp.net mvc 4 Azure blob-无法在MVC 4中的blob容器中显示图像存储,asp.net-mvc-4,azure,azure-storage,azure-storage-blobs,Asp.net Mvc 4,Azure,Azure Storage,Azure Storage Blobs,问题背景: 我有一个基本的MVC4站点,正在尝试显示一张图片,该图片存储在我的Azure云帐户的blob存储容器中。我将图像Uri的列表存储在字符串list中,并将它们传递到一个视图中,它们应该显示在那里 问题: 我似乎无法获取存储在容器中的图像的文件名。 下图显示Azure中的容器注意其中存储了一个大小为101.28KB的图像: 这是我试图使用的代码,用于检索blob,然后读取图像Uri的: AzureStorageController带有Pics操作方法: public ActionRe
Uri的列表
存储在字符串list
中,并将它们传递到一个视图
中,它们应该显示在那里
问题:
我似乎无法获取存储在容器中的图像的文件名。
下图显示Azure中的容器注意其中存储了一个大小为101.28KB的图像:
这是我试图使用的代码,用于检索blob,然后读取图像Uri的
:
AzureStorageController
带有Pics
操作方法:
public ActionResult Pics()
{
var imageList = new List<string>();
var imagesAzure = new myBlobStorageService();
var container = imagesAzure.GetCloudBlobContainer();
foreach (var blobItem in container.ListBlobs())
{
imageList.Add(blobItem.Uri.ToString());
}
return View(imageList);
}
Pics
视图:
@{
ViewBag.Title = "Pics";
}
<h2>Pics</h2>
@foreach (var item in Model)
{
<img src="@item" alt="picture" width="200" height="200" />
}
@{
ViewBag.Title=“Pics”;
}
照片
@foreach(模型中的var项目)
{
}
传递到Pics视图的列表中的Uri为:,但它不具有图像文件名
如有任何帮助,我们将不胜感激。正如Guarav所述,检查的一件好事是确保您的容器不是“私有的”。正如Guarav所述,检查的一件好事是确保您的容器不是“私有的”。您应该从blob返回图像本身。按照您的方式,直接使用url将不起作用,因为应用程序没有访问存储帐户的权限。请检查blob容器的ACL并确保它不是“私有的”。您应该关闭此问题,因为我回答了您关于blob命名的另一个问题,正好也回答了此问题。TL;DR:您正在返回blob名称,即
myblob
。您应该从blob返回图像本身。按照您的方式,直接使用url将不起作用,因为应用程序没有访问存储帐户的权限。请检查blob容器的ACL并确保它不是“私有的”。您应该关闭此问题,因为我回答了您关于blob命名的另一个问题,正好也回答了此问题。TL;DR:您正在返回blob名称,即myblob
。您应该从blob返回图像本身。按照您的方式,直接使用url将不起作用,因为应用程序没有访问存储帐户的权限。请检查blob容器的ACL并确保它不是“私有的”。您应该关闭此问题,因为我回答了您关于blob命名的另一个问题,正好也回答了此问题。TL;DR:您正在返回blob名称,即myblob
。
@{
ViewBag.Title = "Pics";
}
<h2>Pics</h2>
@foreach (var item in Model)
{
<img src="@item" alt="picture" width="200" height="200" />
}