在SQL Server中存储图像的最佳方法

The*_*mpp 1 c# sql-server asp.net entity-framework image

在SQL Server中存储映像的正确方法是哪种?有什么方法可以使用ADO.NET实体框架存储它们吗?我需要一些好的资源,以最好的现代方式来做到这一点。

Dar*_*rov 5

如果您决定将图像存储在SQL Server中,则正确的方法是使用FILESTREAM类型。

有什么方法可以使用ADO.NET实体框架存储它们吗?

事实是FILESTREAM是SQL Server特定的列,而EF被设计为与数据库无关。因此,您可以byte[]在模型上具有类型的属性,但是EF将不会利用流技术。它将作为标准加载varbinary(max)

您还可以使用本机SqlFileStream类直接使用ADO.NET中的FILESTREAM列类型。这是blog post显示示例的。

您可能还决定将文件存储在文件系统上,并且仅将文件路径保存在数据库中。