如何从xml字符串生成rdlc报表



我正在尝试使用asp.net c制作一个以xml字符串为数据源的报表查看器(RDLC report(#这是xml

"<Data><Result>success</Result><Rowset><Row><Date>08-09-2020</Date><TrNo>2015</TrNo><Debit>355</Debit><Credit></Credit><Remark>rem in 2020015-500 USD/Commession</Remark><Balance>-809.5</Balance></Row></Rowset></Data>"  

所以我添加了一个名为st_DS 的数据集

这是数据集的照片

还创建了rdlc报告rdlc报告

我添加了以下代码行

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>  
<rsweb:ReportViewer ID="ReportViewer1" runat="server"></rsweb:ReportViewer> 

这是背后的代码

string xml_resp = objCmd.Parameters["p_out"].Value.ToString();  
XmlTextReader reader = new XmlTextReader(new System.IO.StringReader(xml_resp));  
st_DS stt = new st_DS();  
stt.ReadXml(new XmlTextReader(new System.IO.StringReader(xml_resp)));   
ReportViewer1.ProcessingMode = ProcessingMode.Local;  
ReportViewer1.LocalReport.ReportPath = Server.MapPath("st.rdlc");  
ReportViewer1.LocalReport.DataSources.Clear();             
ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("st_DS",stt.Tables[0])); 
ReportViewer1.LocalReport.Refresh();  

当我运行代码时,它会给我一个没有数据的空白报告红色框内的文本是我得到的响应(XML(

任何人都可以帮我,我太困惑了!感谢

我找到了解决方案只需添加以下数据集

Dataset ds = new Dataset();
ds.ReadXml(new XmlTextReader(new System.IO.StringReader(xml_resp)));
ReportDataSource datasource = new ReportDataSource("st_DS", ds.Tables["Row"]); 

我必须合并报表DataSource中的两个数据集才能使其工作!

最新更新