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

Devexpress DevXPress最终用户报表设计器:从数据库检索报表时,数据源绑定为空,devexpress,devexpress-windows-ui,devexpress-mvc,Devexpress,Devexpress Windows Ui,Devexpress Mvc,我正在使用asp.net mvc web api创建报表服务器。我正在使用devexpress的XRDesignForm对象从web api检索报告中检索数据。我正在将报表数据发回web api。我面临的问题是,如果我使用xtrareport obejct并手动绑定数据源,它就可以正常工作 XtraReport report = new XtraReport(); report.DataSource = setupSummary.FillDataS

我正在使用asp.net mvc web api创建报表服务器。我正在使用devexpress的XRDesignForm对象从web api检索报告中检索数据。我正在将报表数据发回web api。我面临的问题是,如果我使用xtrareport obejct并手动绑定数据源,它就可以正常工作

            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的文章所示,若我只使用服务器上的报表名称从数据库中检索报表,那个么datasource总是空的

      XRDesignForm designForm = new XRDesignForm();

        string url = GetSelectedUrl();
        if (!string.IsNullOrEmpty(url))

            designForm.OpenReport(url);
        designForm.ShowDialog(this);
似乎在将动态报表保存到数据库(作为二进制)时,会丢失数据源绑定。 请帮我做这个。
最后,在花了很多时间之后,我已经解决了这个问题,实际上,当您将报表保存到数据库中作为二进制文件时,它跳过了报表的DataAdapter。所以,在保存之前,您需要先对dataadapter或report执行null操作,然后在获取报表布局的缓冲区之前再次进行ASSANG操作


希望它能帮助别人:-)

Aqdas,非常感谢

报告布局中也存在类似错误

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

XtraReport rep = null;

rep = new rptReqVac();

Stream layoutStream = null;

layoutStream = mGetLoyoutStream(id);

rep.LoadLayout(layoutStream);

rep.DataSource = new dsREQPrintVac();

reportDesigner.OpenReport(rep);
希望它能帮助别人:-)