C# LocalReport有时在渲染时挂起
在C#/WPF应用程序中生成RDLC报告时,有时会挂起render(调用C# LocalReport有时在渲染时挂起,c#,rdlc,C#,Rdlc,在C#/WPF应用程序中生成RDLC报告时,有时会挂起render(调用render方法不会返回) 报表数据来自一个C#对象(该对象预先填充了PostgreSQL数据库中的数据),因此此问题与SQL无关 我想知道: 我怎样才能找到原因呢 是否有任何方法可以让用户在报表生成挂起时终止它 使用块(如中所示)将报告生成嵌入到中并不能解决问题 using (LocalReport report = new LocalReport()) { report.ReportPath = @"C:\Pat
render
方法不会返回)
报表数据来自一个C#对象(该对象预先填充了PostgreSQL数据库中的数据),因此此问题与SQL无关
我想知道:
中并不能解决问题
using (LocalReport report = new LocalReport())
{
report.ReportPath = @"C:\Path\To\MyReport.rdlc";
// Get the report data from db and fill it into MyReportData object.
MyReportData data = CreateReportData();
ReportDataSource headerDataSource = new ReportDataSource();
headerDataSource.Name = "HeaderDataSet";
headerDataSource.Value = data.Header;
report.DataSources.Add(headerDataSource);
// Add more data sources ...
// No report parameters are being used
report.Refresh();
pdfData = report.Render("PDF"); // here it hangs sometimes
}
如上所述,render
-调用有时会挂起。关闭应用程序并再次生成完全相同的报告后,它会工作。报告失败时是否包含任何行?当查询失败时,它包含多少行?我不确定您所说的行是什么意思。报告包含一些表,所有这些表加起来大约有10页长。查询结果中的行数。您使用的是什么版本的SQL Server?数据库有多大?问题可能与数据库碎片化有关,尤其是在使用SQL Server Express的情况下。我不是在使用SQL Server,而是在使用PostgreSQL。报表数据不是直接来自SQL结果集,而是来自C#对象。所以我的问题与行数无关。对任何数据库的任何查询都会返回一行数据!!!报告失败时是否包含任何行?当查询失败时,它包含多少行?我不确定您所说的行是什么意思。报告包含一些表,所有这些表加起来大约有10页长。查询结果中的行数。您使用的是什么版本的SQL Server?数据库有多大?问题可能与数据库碎片化有关,尤其是在使用SQL Server Express的情况下。我不是在使用SQL Server,而是在使用PostgreSQL。报表数据不是直接来自SQL结果集,而是来自C#对象。所以我的问题与行数无关。对任何数据库的任何查询都会返回一行数据!!!