0
我想用C#编写一个三层架构的电话簿,但是我没有足够的这种架构。 我们有一个datagridview,当我们点击每一行时,显示每个人在图片框中的图像。 但它不起作用。我不知道问题出在哪里。请指导我。我最近熟悉了这个架构。在picturebox中查看3层架构中的联系人照片C#
DAL代码:
public void GetBinaryImage(int Id)
{
context.People.Select(a => new { a.Id, a.PersonImage }).Where(a => a.Id == Id) ;
}
BLL代码
public void GrtBinaryImage(int person_Id)
{
Myperson.GetBinaryImage(person_Id);
}
PL代码
private void dataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
if (dataGridView.SelectedRows.Count > 0)
{
int Id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
showpictureBox.Image = bytearytoimage(person.GrtBinaryImage(Id));
}
}
private Image bytearytoimage(object v)
{
MemoryStream stream = new MemoryStream(v);
return Image.FromStream(stream);
}
我得到的错误:
"Argument 1: cannot convert from 'void' to object".
我知道我写了一个错误,请指导我。
什么不行? – musefan
我收到错误“参数1:无法从'无效'转换为对象”。 –
BLL的GrtBinaryImage方法没有返回任何值我想它应该返回一个在bytearytoimage中需要的对象 请更新BLL方法 –