我将 rdl 以二进制格式远程存储在 SQL Server 数据库中。我想使用报表查看器控件来显示报表。
这似乎是一个简单的概念,但我不断发现相互冲突的教程,其中有几种不同的方法......我无法开始工作。
我是否正确地认为我所需要的只是报表查看器控件来使其正常工作?如果是这样,如何打开远程存储的 .rdl 文件?
我还有一个变量,它将 rdl 内容存储在字符串中...不确定这是否有帮助?所以我可以使用这个字符串或从数据库中提取 .rdl...
我是 .NET 的新手,所以我不确定如何最好地解决这个问题......到目前为止我有以下内容:
ReportViewer r = new ReportViewer();
//pass the rdl to report viewer
r.ProcessingMode = ProcessingMode.Remote;
最佳答案
您需要实际将其设置为本地处理模式而不是远程。
我只从 DLL 而非数据库加载过 RDL,但我会查看以下 API,因为它可能具有接受字符串的重载,或者您将字符串转换为流。
reportViewer.LocalReport.LoadReportDifinition
这是我用来从 DLL 加载的代码(可能有助于在上下文中查看)
Assembly assembly = Assembly.LoadFrom("MyReports.dll");
Stream stream = assembly.GetManifestResourceStream("Reports.MyReport.rdlc");
reportViewer.LocalReport.LoadReportDifinition(stream);
关于asp.net - 使用 .NET 报告查看器打开远程 RDL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8801284/