简体   繁体   English

asp.net报表查看器绑定问题

[英]Issue with asp.net report viewer binding

I have a problem with asp.net report viewer I have to display two SQL table data 我有一个asp.net报表查看器的问题我必须显示两个SQL表数据

I made a function for this that is working fine with html reporting but I wants to display this in report viewer in my website. 我为此做了一个功能,可以正常使用html报告,但我想在我的网站的报告查看器中显示它。 the following code is working fine with Gridview but not binding with report viewer. 以下代码适用于Gridview但不与报表查看器绑定。

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        reports();
    }

}
private void reports()
{

    DataSet ds = new DataSet();
    DataTable da = new DataTable();
    DataColumn dc = new DataColumn();

    db.CommandTimeout = 200;
    var ans = (from data in db.tblAttributeDatas
               where data.nMainDataId == 3291
               select data).ToList();


    List<tblSectionAttribute> cols = (from Attrib in db.tblSectionAttributes
                                      from main in db.tblAttributeDatas
                                      where Attrib.nId == main.nSectionAttributeId
                                      &&
                                      main.nMainDataId == 3291
                                      select Attrib).ToList();
    int a = 1;
    foreach (var item in cols)
    {


        DataColumn dc1 = new DataColumn(a.ToString() + "." + item.strAttributeName);
        dc1.DefaultValue = "";
        da.Columns.Add(dc1);
        a++;



    }
    int row = 0;
    DataRow dr = da.NewRow();
    foreach (var item1 in ans)
    {

        DataColumn d = new DataColumn();
        if (item1.strValue != "")
        {
            d = new DataColumn(row.ToString() + "." + item1.strValue);
        }
        else
        {
            d = new DataColumn("not Answered");
        }
        dr[row] = d;
        //da.Rows.Add(dr);
        //   dr = da.Rows[row];

        row++;
    }
    da.Rows.Add(dr);
    ReportViewer1.ProcessingMode = ProcessingMode.Local;
    ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Report.rdlc");

    ReportDataSource datasource = new ReportDataSource("DataSet",da);
    ReportViewer1.DataBind();
    ReportViewer1.LocalReport.DataSources.Clear();
    ReportViewer1.LocalReport.DataSources.Add(datasource);



}

and my aspx code is 我的aspx代码是

     <asp:ScriptManager runat="server" />
    <rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Font-Size="8pt" WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt">
        <LocalReport ReportPath="Report.rdlc">
       <DataSources>
            <rsweb:ReportDataSource  />     
       </DataSources>
        </LocalReport>
    </rsweb:ReportViewer>

and output is blank only blank ReportViewer display in browser with Report Viewer built-in heading and paging no error just black output of Report Viewer please help 并且输出为空白只有空白ReportViewer显示在浏览器中,报表查看器内置标题和分页没有错误只是报表查看器的黑色输出请帮助

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM