将URL路径传递给ReportViewer

时间:2013-10-08 10:47:02

标签: c# asp.net stored-procedures reportviewer

我有一个方法ddlCompanyList_SelectedIndexChanged,它实质上使用存储过程来查找存储在表中的报表的URL。它还利用读者来获取该网址:

        SqlDataReader reader = command.ExecuteReader();

        if (reader.HasRows)
        {
            while (reader.Read())
            {
                string x = reader.GetValue(3).ToString();
                test(x);

            }
        }

        else
        {
           /* Console.WriteLine("No rows found.");*/
        }

        reader.Close();
        connection.Close();

此URL将存储在变量x中,然后传递给我的'test'方法:

protected void test(string x)
{
    Response.Write(x);
}

结果是,每当从我的下拉列表中选择一个报告时,ddlCompanyList_SelectedIndexChanged将运行以获取该报告URL,然后再将其传递给“test”。最后一步和我不确定的是如何将变量x传递给我的ReportViewer:

 <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
    <rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Width="930px" Height="1000" Font-Size="8pt" ProcessingMode="Remote" WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt">
        <ServerReport ReportPath="/Systems/test/Report 1" ReportServerUrl="http://test/ReportServer" />
            </rsweb:ReportViewer>

现在我手动添加了一个ReportPath,但是我希望找到一种方法来确定ReportPath将始终是我的变量x的值。

感谢您提供任何帮助或建议!

1 个答案:

答案 0 :(得分:1)

试试这个:

this.ReportViewer1.ServerReport.ReportPath = x;