Zav*_*asi -1 sql-server-2008 asp.net-mvc-3 entity-framework-5
如何在数据库中存储Image,然后使用MVC检索和显示它
我在用
MVC3
Entity Framework Database First
Run Code Online (Sandbox Code Playgroud)
和
SQL SERVER 2008
Run Code Online (Sandbox Code Playgroud)
在数据库中,我使用varbinary(MAX)作为图像
Image varbinary(MAX) Checked
Run Code Online (Sandbox Code Playgroud)
我还用过
[DisplayName("Image")]
public byte[] Image { get; set; }
Run Code Online (Sandbox Code Playgroud)
在我的映射类中
当我尝试将其保存在我的创建操作方法中时
public ActionResult Create(MarjaaModel newMarjaa, HttpPostedFileBase uploadFile)
{
if (uploadFile != null && uploadFile.ContentLength > 0)
{
newMarjaa.Image = new byte[uploadFile.ContentLength];
uploadFile.InputStream.Read(newMarjaa.Image, 0, uploadFile.ContentLength);
}
try
{
data.submitMarjaa(newMarjaa);
return RedirectToAction("Index");
}
catch
{
return View();
}
}
Run Code Online (Sandbox Code Playgroud)
我成功将图像保存为二进制数据
但是Plz告诉我如何检索这个图像并在我的视图中显示它
最后我做到了
我的控制器中的一个简单方法
public ActionResult ShowImage(long id)
{
var model = data.getMarjaa(id);
return File(model.Image, "image/jpg");
}
Run Code Online (Sandbox Code Playgroud)
在我看来
<td>
@if (item.Image == null)
{
<img width="40" height="40" src="http://www.abc.com/images/staff/no_worry[1].jpg" />
}
else
{
<img width="40" height="40" src='@Url.Action("ShowImage", "Admin", new { id = item.id })' />
}
</td>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10055 次 |
最近记录: |