为什么这段代码只保存第一张图片,而我选择更多的是 1

why this code only save first pic while i am selection more the 1

在上面的代码中,我用图片框 TimesSelect select编辑了多张图像并显示在面板中,面板显示了所有 select 编辑的图像,但在数据库中只有第一张图片多次,例如我 select 10张图片,在数据库中第一张图片保存了10次

if (files != null)
{
    SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\Avais\Desktop\GUI of GUA\GUI of GUA\GUAdatabase.mdf;Integrated Security=True");

    con.Open();
    FileStream fs = new FileStream(files[0], System.IO.FileMode.Open, System.IO.FileAccess.Read);

    byte[] image = new byte[fs.Length];
    fs.Read(image, 0, Convert.ToInt32(fs.Length));

    fs.Close();

    SqlCommand cmd = new SqlCommand("INSERT INTO Admin_Pic_Lib(Pictures) VALUES (@pic)", con);
    SqlParameter prm = new SqlParameter("@pic", SqlDbType.VarBinary, image.Length, ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, image);

    cmd.Parameters.Add(prm);

    cmd.ExecuteNonQuery();

    label1.ForeColor = Color.Green;
    label1.Text = "Pic Added Suscussfully";

    con.Close();
}

您目前只针对第一个可用的图像/文件:

FileStream fs = new FileStream(files[0], ...);

如果您想定位并保存多个文件,请考虑遍历您的文件集合并为每个文件执行此操作:

foreach(var file in files)
{
        // Read each individual file and save it here
}