Хорошо, я искал и пробовал разные идеи в течение хороших шести часов, и я не нашел решения.
Я использую Visual Studio 2010, C #, ASP.Net 4.0 и ReportViewer 10.
У меня есть функция javascript, которая выполняет асинхронный вызов для обновления параметров отчета новыми значениями, а затем перезагружает отчет.Все выполняется так, как ожидалось, но отчет не отображает новые данные.
Если я выполняю обычную обратную передачу с помощью кнопки, она работает, но как только выполняется асинхронная обратная передача, она не работает.Я прочитал кое-что, что рендеринг может быть в конце жизненного цикла страницы и т. Д., Но это никуда меня не привело.Вот код, который я использую для установки параметров.
Код сзади:
//Tried with and without this line and it makes no differed
ReportViewer1.Reset();
ReportViewer1.ProcessingMode = ProcessingMode.Remote;
List<ReportParameter> rParams = new List<ReportParameter>();
rParams.Add(new ReportParameter("UserID", SelectedUserID.ToString(), false));
rParams.Add(new ReportParameter("PayrollSalesMonthID", "13", false));
ReportViewer1.ServerReport.ReportServerUrl = new Uri("...");
ReportViewer1.ServerReport.ReportPath = "...";
ReportViewer1.ServerReport.SetParameters(rParams);
//Tried with and without this line and it makes no differed
ReportViewer1.ServerReport.Refresh();
Разметка:
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<rsweb:ReportViewer ID="ReportViewer1" runat="server" BorderStyle="None" Width="100%" Height="98%" SizeToReportContent="true" AsyncRendering="true" />
</rsweb:ReportViewer>
ОБНОВЛЕНИЕ
У меня есть как диспетчер сценариев ASP, так и диспетчер ресурсов EXT.Net, как показано ниже, и это вызывает ошибку.Как только я удаляю Resource Manager, он работает нормально, но он мне нужен для других функций на этой странице.Также вопрос о размещении отчета в iFrame исключен.
<ext:ResourceManager ID="ResourceManager1" runat="server" Locale="en-GB" />
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
Есть какие-нибудь идеи о том, как заставить этих двух менеджеров хорошо играть вместе?