【发布时间】:2012-07-13 13:35:04
【问题描述】:
我在我的 C# 代码中设置报表数据源,如下所示:
report.SetDataSource(dataSource);
一切正常,但之后水晶报表仍会尝试连接到数据库。 我虽然如果我从代码中设置数据源,那么报告就不会想要从数据库中获取更多数据。
真的是这样吗,即使在从代码报告中设置了数据源之后,也会从数据库中询问更多数据?
编辑:我面临的真正问题是我有 2 份报告,一份在从代码设置数据源后从数据库中获取数据,而另一份则没有。我整天都在努力解决这个问题,但还没有运气。这两个报告几乎完全相同,都使用数据库视图从数据库中获取字段,并且都使用相同的代码从代码中设置数据源。
逻辑是我在我的代码中加载报告,从中获取所需的数据库字段并使用这些字段创建DataTable。然后我用数据填充它并将其设置为数据源:report.SetDataSource(dataSource);。对于这两个报告,代码和逻辑是相同的!只是字段不同..
【问题讨论】:
-
第二个报表是子报表吗?
-
不,第二个报告不是子报告。
-
报表中有子报表吗?我对同样问题的经验是,我们认为子报表在某种情况下被抑制,所以在这种情况下,我们没有在代码中为子报表设置数据源。虽然它没有在 .rpt 文件中正确地被抑制,所以它要求一个数据源。我的猜测是,这也是同样的道理。
-
报表中有子报表...
标签: c# crystal-reports datasource