我的WPF应用程序中有几个RDLC文件。当我发布项目时,报告文件没有发布,当我尝试使用客户端访问它们时,我得到一个错误,说找不到它们。我已经检查了发布文件夹,实际上,它们不在那里。我使用以下代码调用RDLC文件:
Microsoft.Reporting.WinForms.ReportViewer rvReportViewer;
/* ... */
rvReportViewer.LocalReport.ReportPath = string.Format("Reports/{0}.rdlc", ReportName);我已经尝试将这些文件上的构建操作设置为"Resource",这是我对静态图像文件的设置,但这似乎没有任何区别。
为什么不将报告复制到发布目录?有没有办法强制这样做,或者我应该以其他方式访问它们?
谢谢!
发布于 2010-08-14 09:18:55
我不知道RDLC文件是否有特别的问题,但这里是确保发布其他文件的一般方法。
在解决方案资源管理器中右键单击该文件,选择“属性”。将"Build Action“设置为"Content",将"Copy to output Directory”设置为"Copy if newer“。
转到项目属性->发布页面。点击“应用程序文件按钮”,勾选“显示所有文件”。将“发布状态”设置为“包含(自动)”
文件属性

应用程序文件

发布于 2013-07-09 16:02:50
我已经使用@nos的答案有一段时间了,但我注意到在出版物中,.rdlc-files集被复制到两个位置:
location;
因此,如果我有\Reports\Report1.rdlc,我会在发布的位置找到:
1. <published folder>\Reports\Report1.rdlc;
2. <published folder>\bin\Reports\Report1.rdlc.我并不打算在第二个位置使用rdlc的副本,实际上,如果我删除这些副本,报告仍然会生成。
我将每个rdlc-file的设置更改为:
Build Action: Content;
Copy to Output Directory: Do not copy.现在,没有向第二个位置写入任何内容。
发布于 2015-11-06 22:46:15
对不起,伙计们,这与“始终复制”或“更新时复制”无关。事实上,我将其设置为“从不复制”。通过将Build Action从"Embedded Resource“更改为"Content”,可以解决此问题。然后,在构建和发布RLDC文件时,RLDC文件将被复制到正确的位置。
https://stackoverflow.com/questions/3481223
复制相似问题