我应该使用什么变量类型来保存图像?

9 c# sql types

我将把图像保存到SQL数据库中(不知道在那里使用什么类型),我将查询数据库中的学生肖像拍摄图像.

我应该使用什么变量类型来存储此图像?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Nana_s_Student_Gradebook
{
    class Student
    {
        public string name { get; set; }
        public string lastName { get; set; }
        public byte[] picture { get; set; }
        public DateTime dateOfBirth { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

有什么指导吗?:)

mar*_*c_s 8

在SQL Server方面,无论如何,使用System.Drawing.Image类型 - 它的二进制文件,它的大小最多为2 GB,速度很快,非常适合这种用例.平均图像大小约为1 MB,这可能是您最好的选择 - 甚至比使用SQL Server 2008 VARBINARY(MAX)属性更好(如果您有很多真正非常大的图像,定期大于1 MB,那就太棒了;这里,二进制文件本身存储在数据库控制下的服务器机器的文件系统中).

在您的.NET代码中,您可能希望使用FILESTREAM或派生类 - 最终,您必须以某种方式将这些字节流式传输到SQL Server,但您不需要使用来自开始 - .NET中所有与图片相关的类型都提供某种流式支持.