ReportViewer に画像ロゴを動的に追加する方法を教えてください。この画像を db から取得し、Base64 に変換してから、ReportViewer に追加する必要があります... 次のコードは次のとおりです。
rpViewer.LocalReport.EnableExternalImages = true;
Company _company = db.Companys.Where(c => c.codCompany == c.codCompany).Single();
//first step
byte[] img = _company.imagem.ToArray(); // i get image from db
MemoryStream _ms = new MemoryStream(img);
string logo = Convert.ToBase64String(img); //convert to base64
// 2 step
List<ReportParameter> lstReportParams = new List<ReportParameter>();//Create params
lstReportParams.Add(new ReportParameter("Logo", logo));
lstReportParams.Add(new ReportParameter("LogoMimeType", "image/png"));
// Doesn't work here (see error below)
this.rpViewer.LocalReport.SetParameters(lstReportParams);
this.rpViewer.RefreshReport();
エラー:
{"ローカル レポートの処理中にエラーが発生しました。"}
{"このレポートで定義されていないレポート パラメーター 'ロゴ' を設定しようとしました。"}
Rldc で:
MIMEType =Parameters!LogoMimeType.value
Value ="System.Convert.FromBase64String(Parameters!Logo.Value)"
うまくいかないのはなぜですか?
パラメータを認識しないのはなぜですか?
その画像を ReportViewer に読み込むことができます。