Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从DB在PictureBox中显示照片_C#_Winforms_Linq_Picturebox - Fatal编程技术网

C# 从DB在PictureBox中显示照片

C# 从DB在PictureBox中显示照片,c#,winforms,linq,picturebox,C#,Winforms,Linq,Picturebox,我有这样一个代码,当员工没有图片时,会出现一条消息:看起来像Emp.Photo是null,调用ToArray()会给您一个空引用异常。试试这个: public EmployeeProfile(int EmpID) { if (byteArrayToImage(Emp.Photo.ToArray()) != null) { pictureBoxEmp.Image = byteArrayToImage(Emp.Photo.ToArr

我有这样一个代码,当员工没有图片时,会出现一条消息:

看起来像
Emp.Photo
null
,调用
ToArray()
会给您一个空引用异常。试试这个:

public EmployeeProfile(int EmpID)
{
      if (byteArrayToImage(Emp.Photo.ToArray()) != null)
            {
                pictureBoxEmp.Image = byteArrayToImage(Emp.Photo.ToArray());
                pictureBoxEmp.SizeMode = PictureBoxSizeMode.StretchImage;
            }
}
public Image byteArrayToImage(Byte[] byteArrayIn)
{
       MemoryStream ms = new MemoryStream(byteArrayIn);
       Image returnImage = Image.FromStream(ms);
       return returnImage;
}

似乎您的
Emp
最初没有照片,这意味着Emp.Photo为空,这就是为什么您的消息是“对象引用未设置为对象的实例”,您需要首先检查您的Emp对象是否有照片:

if (Emp.Photo != null)
{
    pictureBoxEmp.Image = byteArrayToImage(Emp.Photo.ToArray());
    pictureBoxEmp.SizeMode = PictureBoxSizeMode.StretchImage;
}

确保Emp照片不为空:

public EmployeeProfile(int EmpID)
        {
              if (Emp.Photo != null)
                    {
                        pictureBoxEmp.Image = byteArrayToImage(Emp.Photo.ToArray());
                        pictureBoxEmp.SizeMode = PictureBoxSizeMode.StretchImage;
                    }
        }

请准确地说明您想要做什么,并显示您的整个代码,以给出适当的答案。
public EmployeeProfile(int EmpID)
{
      if (Emp != null && Emp.Photo != null)
      {
           pictureBoxEmp.Image = byteArrayToImage(Emp.Photo.ToArray());
           pictureBoxEmp.SizeMode = PictureBoxSizeMode.StretchImage;
      }
}