Devexpress最终用户报表设计器:从数据库检索报表时,数据源绑定为空



我正在使用asp.net mvc web api创建报表服务器。我正在使用devexpress的XRDesignForm对象从web api检索报告检索数据。我张贴回报告数据到web api。我所面临的问题是,如果我使用xtransport对象并手动绑定数据源,它会工作得很好。

            XtraReport report = new XtraReport();
            report.DataSource = setupSummary.FillDataSet();
            report.DataMember = ((DataSet)report.DataSource).Tables[0].TableName;
            designForm.OpenReport(report);
            //designForm.Show();

            designForm.ShowDialog(this);

我可以成功地维护这个报告,并可以保存到数据库中,

但是正如ReportStorage的文章中所示,如果我只使用服务器上的报告名称从数据库中检索报告,那么数据源总是为空。

      XRDesignForm designForm = new XRDesignForm();
        string url = GetSelectedUrl();
        if (!string.IsNullOrEmpty(url))
            designForm.OpenReport(url);
        designForm.ShowDialog(this);

似乎在将动态报告保存到数据库(作为二进制)时,它丢失了数据源绑定。请帮帮我。由于

Aqdas,非常感谢。

报告布局中有类似的错误,

我的解决方案是,在布局后再次设置DataSource

XtraReport rep = null;
rep = new rptReqVac();
Stream layoutStream = null;
layoutStream = mGetLoyoutStream(id);
rep.LoadLayout(layoutStream);
rep.DataSource = new dsREQPrintVac();
reportDesigner.OpenReport(rep);

希望对大家有所帮助:-)

最后花了很多时间后,我已经解决了这个问题,问题实际上是当您将报告保存为二进制时,它会跳过DataAdapter的报告。因此,在保存之前,您需要首先对数据适配器或报告执行null,然后在获得报告布局的缓冲区之前再次进行配置。

希望对大家有所帮助:-)

最新更新