我正在开发一个WinForms应用程序,它可以生成我的大学生的报告.
我正在使用Crystal Reports,但我不知道如何从文件系统中检索学生照片.
学生照片存储在文件系统中并使用以下命名约定:
C:\Id Maker\"Clgid".jpg
Run Code Online (Sandbox Code Playgroud)
Clgid存储在数据库中的值在哪里.
作为一个例子我Clgid就是2009UCS020其链接到我的照片在文件系统上C:\Id Maker\2009UCS020.jpg
我正在努力寻找如何查找数据库值,Clgid然后从文件系统中检索照片,以便我可以在我的Crystal Report中显示它.
我在数据库中插入图像的代码如下:
MemoryStream ms =new MemoryStream();
byte[] PhotoByte=null;
PhotoByte=ms.ToArray();
pictureBox1.Image.Save(ms, ImageFormat.Jpeg);
PhotoByte =ms.ToArray();
Str = "insert into Experimmm Values('" + PhotoByte + "','" + textBox1.Text + "')";
Conn.Open();
cmd.Connection = Conn;
cmd.CommandText = Str;
cmd.ExecuteNonQuery();
Conn.Close();
Run Code Online (Sandbox Code Playgroud)
哪个进展顺利.我可以在ma数据库表中看到二进制数据,比如<Binary Data>
我的代码检索数据是:
Str ="select * from Experimmm where id = '" +textBox2.Text + "'";
Conn.Open();
cmd.Connection = Conn;
cmd.CommandText = Str;
dr = cmd.ExecuteReader();
if (dr.Read())
{ label1.Text = dr.GetValue(1).ToString();
byte[] PhotoByte = (byte[])dr.GetValue(0);
MemoryStream mem = new MemoryStream(PhotoByte, 0, PhotoByte.Length);
//but an …Run Code Online (Sandbox Code Playgroud)