Для веб-элемента управления средством просмотра отчетов требуется веб-форма System.Web.UI.ScriptManager.
Я попытался вызвать отчет.rdl, созданный в SSRS, для вызова на странице aspx; но я получил следующую ошибку:
Для веб-элемента управления Report Viewer требуется
System.Web.UI.ScriptManager
в веб-форме
Мой код выглядит следующим образом:
protected void Page_Load(object sender, EventArgs e)
{
//string query = Session["ClosedBugsResult1"].ToString();
if(!IsPostBack)
ReportViewer1.ProcessingMode = ProcessingMode.Remote;
ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://localhost/reportserver");
ReportViewer1.ServerReport.ReportPath = @"D:\Users\XXX\Documents\Visual Studio 2008\Projects\BugtrackerSample1\BugTrackerSample\BugTrackerSample\Report1.rdl";
//ReportParameter[] param = new ReportParameter[1];
//param[0] = new ReportParameter("CustomerID", txtparam.Text);
//ReportViewer1.ServerReport.SetParameters(param);
System.Web.UI.ScriptManager scriptManager = new ScriptManager();
Page page = new Page();
System.Web.UI.HtmlControls.HtmlForm form = new HtmlForm();
form.Controls.Add(scriptManager);
form.Controls.Add(ReportViewer1);
page.Controls.Add(form);
page.DataBind(); //exception here
ReportViewer1.ServerReport.Refresh();
}
Любая помощь приветствуется.
1 ответ
В форме отчета добавьте диспетчер сценариев из панели инструментов перед элементом управления отчетом: откройте панель инструментов и выберите Ajax Extensions - Script Manager, а затем перетащите его на форму. В Visual Studio 2012 я получил следующий новый элемент управления в форме:
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
Полная информация о Visual Studio 2012 по http://msdn.microsoft.com/en-us/library/ms252104.aspx