2

我有一个 Windows 窗体应用程序,它使用 reportViewer 控件来显示一些报告。

string exeFolder = Path.GetDirectoryName(Application.StartupPath);
string reportPath = Path.Combine(exeFolder, @"Reports\report.rdlc");

如果我创建一个在任何客户端计算机上安装应用程序的安装文件,但当我使用 ClickOnce 部署在公司 Intranet 上部署应用程序时失败,则上面的代码有效。

我将 .rdlc Build Action 设置为 Content 并将 Copy To OutPut Directory 设置为 Copy Always。

下面是代码

reportViewer1.LocalReport.DataSources.Clear();
ReportDataSource datasource = new ReportDataSource("myReportDataSourceHere", authorisedLeave);
reportViewer1.LocalReport.DataSources.Add(datasource);

string exeFolder = Path.GetDirectoryName(Application.ExecutablePath);
string reportPath = Path.Combine(exeFolder, @"rdlcReports\myReportName.rdlc");

reportViewer1.LocalReport.ReportPath = reportPath;
reportViewer1.RefreshReport();

然后,当我尝试从浏览器中的 ClickOnce 安装链接安装应用程序时,我收到以下错误消息。

错误摘要 下面是错误摘要,这些错误的详细信息在日志后面列出。* 激活 C:\Users\myWindowsUserName\Desktop\ProjectName.appref-ms| 导致异常。

检测到以下故障消息:

下载http://Server1/My Project Name/Application Files/MyProjectName_1_0_0_25/rdlcReports/myReportName.rdlc 未成功。

远程服务器返回错误:(404) Not Found。

4

0 回答 0