【问题标题】:How to save image to my model如何将图像保存到我的模型
【发布时间】:2015-03-15 13:43:08
【问题描述】:

我有一个 MVC 网站,想将图像添加到我的模型并显示在我的视图中。

目前,这是我的模型的样子。

型号:

public class EventModel
{
    public string Title { get; set; }

    public string Location { get; set; }

    public byte[] EventLogo { get; set; }

    public string Description { get; set; }
}

目前,我已经在我的项目中的 Content/Images/Logo-1.jpeg 下保存了一张图片

我对如何将图像路径保存到字节数组知之甚少。我想我必须先转换它。或者是否有我可以用来保存图像的替代数据类型。请指教。

【问题讨论】:

  • "save a image path to an array of byte" - 图像的 data 将是一个字节数组。图像的 path 将是一个字符串。你想用哪个?
  • @David 假设您为用户提供上传图像的功能。您将使用什么数据类型来存储它?图像将从数据库中存储和检索。但是为了测试的目的,图片是存储在我的项目中的。
  • 在数据库中你需要varbinary

标签: c# arrays asp.net-mvc image model-view-controller


【解决方案1】:

您可以将图像路径保存在数据库中,然后从该路径获取显示图像。在 Model 中为图片路径添加 stribg 属性:

public string EventLogo { get; set; }

你可以参考我解释的this post(ASP.NET MVC 4 C# HttpPostedFileBase, How do I Store File) 嗯。

【讨论】:

  • 您提供的答案的链接非常复杂。用户将能够上传图像,图像将被存储并从数据库中检索并显示在视图中。将其存储为字符串是否正确?
  • 所以你想在数据库中保存图片为byte[]
  • 根据我在网上搜索的内容,它存储为一个字节。所以是的。除非有更简单的方法来实现这一点?
  • 我以前做的只是保存图片的路径,它保存在服务器上,并在需要时从路径中获取,这比将图像存储在数据库中简单
  • 如果您将图像文件放入 SQL Server 数据库中,您应该重新考虑您的设计。 SQL Server 不是文档存储。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-15
相关资源
最近更新 更多