【发布时间】:2019-04-30 14:46:55
【问题描述】:
我有一个 dotnet core (+razor +ef) 应用程序,其通常模型为 Product :-)
一个产品应该有一个相关的图片,从Products\Create.cshtml和Products\Edit.cshtml页面上传,存储在数据库的一个表中,并显示在Products\Details.cshtml中。
我的模型是这样的:
public class Product
{
public int Id { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public decimal Price { get; set; }
public byte[] Image { get; set; }
}
第一个问题:图片使用byte[]是否正确?
第二个问题:由于我想我无法为图片自动搭建 CRUD 页面,我如何从剃刀 Create.cshtml 页面上传图片?
非常感谢
【问题讨论】:
-
这似乎有点像家庭作业问题。你能告诉我们到目前为止你已经尝试了什么吗?看看How to Ask 以获得一些建议。
-
这不是作业,真的。我在专业编程方面有 20 多年的经验(并且也有 :-)。不幸的是,我对 .net 技术还很陌生,而且 dotnet 核心文档很烂 :-) 我试过了,但我真的无法在网上找到有关将图片从 html 页面移动到 DB 以及反之亦然的帮助。
-
@DanielePallastrelli,您可以 use this to upload file in .Net Core 并将文件路径存储在数据库中,而不是
byte[] -
@yW0K5o 不幸的是,我必须将整个图像存储到数据库的表中。这是我的应用程序的一个约束,因为另一个应用程序将使用相同的数据库来检索图片。
-
@DanielePallastrelli, read this to save picture in database 并使用我之前的链接如何在 .Net Core 中上传文件。
标签: c# entity-framework razor .net-core