8

我正在尝试添加外部照片作为徽标以及report.rdlc文件上的报告。我有这个错误

尚未为此报告设置启用 externalimages 属性

在此处输入图像描述?

这是我的代码。

 try
{
    this.pedidosTableAdapter.Connection.ConnectionString = con.MysqlConnect();

    this.pedidosTableAdapter.Fill(this.fabricacaoDataSet8.pedidos, Pages.relatorios.num);
    this.reportViewer1.RefreshReport();
}
catch { }

// for external image
this.reportViewer1.LocalReport.EnableExternalImages = true;
ReportParameter parm = new ReportParameter();
parm=(new ReportParameter("path", @"C:\logo.jpg",true));
this.reportViewer1.LocalReport.SetParameters(parm);
this.reportViewer1.Refresh();
4

6 回答 6

7

我有使用代码启用外部图像的经验,它适用于本地/开发环境,但在服务器上部署时它不起作用并报告引发错误:

“尚未为此报告设置启用外部图像属性”

为了解决这个问题,EnableExternalImages="true"在你使用 ReportViewer 控件的 ASPX 或设计文件中使用属性,它将完美地工作。

于 2014-07-26T10:04:43.600 回答
5

这里的问题实际上是,您this.reportViewer1.RefreshReport();在设置this.reportViewer1.LocalReport.EnableExternalImages = true;.

顺序在这里很重要。

于 2017-06-18T14:07:44.297 回答
2

我希望这张图片对您的 Windows 应用程序有帮助。激活您的 Reportviewer->Properties->LocalReport->EnableExternalImage 并将其设置为 True在此处输入图像描述

于 2018-11-19T15:04:52.823 回答
1

这里提到,图片的路径必须是URL格式,即@"file:///C:\logo.jpg"

或者你可以试试

var filepath = new Uri("C:\logo.jpg");
var path = new ReportParameter("Path", filepath.AbsolutePath);
this.reportViewer1.LocalReport.SetParameters(new ReportParameter {Path = path});
于 2014-03-20T20:02:20.583 回答
0

对于 WinForm 应用程序,下面的代码将运行良好。

string templateImage = Application_Path + @"\Images\ReportLogo.jpg";
rvRptContainer.LocalReport.EnableExternalImages = true;
rvRptContainer.LocalReport.SetParameters(new ReportParameter("ReportLogo", "File:\\" + templateImage));

对于 ASP.Net 应用程序,请执行以下操作:

ReportViewer1.LocalReport.EnableExternalImages = true;

    string imagePath = new Uri(Server.MapPath("~/images/Mudassar.jpg")).AbsoluteUri;

    ReportParameter parameter = new ReportParameter("ImagePath", imagePath);

    ReportViewer1.LocalReport.SetParameters(parameter);

    ReportViewer1.LocalReport.Refresh();
于 2018-12-16T19:21:08.573 回答
0

没有什么对我有用,但这很有效

        LocalReport localReport = new LocalReport();
        localReport.ReportPath = HostingEnvironment.MapPath("~/Reports/myreport.rdlc");
        localReport.EnableExternalImages = true;
        localReport.EnableHyperlinks = true;
于 2020-05-19T20:56:09.890 回答