Здравствуйте, я получил эту строку кода, чтобы загрузить изображение из базы данных Sql:Pass байт [] в качестве параметра ReportViewer
MemoryStream mem;
void zobraz_logo()
{
try
{
SqlDataAdapter dataAdapter = new SqlDataAdapter(new SqlCommand("SELECT logo FROM firma WHERE id = 1", spojeni));
DataSet dataSet = new DataSet();
dataAdapter.Fill(dataSet);
if (dataSet.Tables[0].Rows.Count == 1)
{
Byte[] data = new Byte[0];
data = (Byte[])(dataSet.Tables[0].Rows[0]["logo"]);
mem = new MemoryStream(data);
}
}
catch (Exception)
{
MessageBox.Show("");
}
}
Теперь я пытаюсь передать его в качестве параметра ReportViewer:
eportParameter[] parameter = new ReportParameter[18];
parameter[18] = new ReportParameter("rp_logo", Image.FromStream(mem)); // this is the issue line
this.firmaTableAdapter.Fill(this.dataset_voucher.firma);
this.zajezdTableAdapter.Fill(this.dataset_voucher.zajezd,vybrana_akce,klientClass.Rocnik());
this.reportViewer1.LocalReport.SetParameters(parameter);
this.reportViewer1.RefreshReport();
}
Я пытаюсь загрузить изображение как параметр в Image ReportViewer. Надеюсь, это возможно сделать так. Если нет, пожалуйста, предложите мне лучший способ сделать это?
На указанной линии я получаю сообщение об ошибке: Argument 2:cannot convert from System.Drawing.Image to String[]
Спасибо за ваше время.
Возможный дубликат [Аргумент 5: невозможно преобразовать из 'System.Drawing.Image' в 'string' - вызов класса1 из основного класса] (http://stackoverflow.com/questions/16267104/argument-5-cannot- convert-from-system-drawing-image-to-string-call-cla) –