Я пытаюсь получить только одну страницу с удаленным сообщением, но вместо этого я получаю целый многослойный отчет с удаленным сервера отчетов:Запроса на одной странице отчета в удаленном Report Viewer/ServerReport
var rsReports = new Microsoft.Reporting.WebForms.ReportViewer
{
ProcessingMode = ProcessingMode.Remote,
ShowParameterPrompts = false,
CurrentPage = page // In theory this should be enough, but makes absolutely no difference
}
rsReports.ServerReport.ReportServerCredentials = new ReportServerCredentials(username, password, domain);
rsReports.ServerReport.ReportServerUrl = remoteServerUrl;
rsReports.ServerReport.ReportPath = reportPath;
rsReports.ServerReport.SetParameters(parameters);
rsReports.ServerReport.Refresh();
return rsReports.ServerReport.Render("HTML4.0"); // Returns a byte[] of html containing all report pages
Есть ли способ запросить только одну страницу с удаленного сервера отчетов?
В идеале я бы не хотел получать все 600 страниц с сервера. На самом деле я не хочу, чтобы сервер запрашивал базу данных, чтобы получить записи для заполнения 600 страниц. Предположим, у меня нет доступа к изменению отчетов и работе с тем, что у меня есть на сервере отчетов. Я подозреваю, что должен быть способ достичь этого, поскольку, когда я запрашиваю свои отчеты на сервере отчетов напрямую, кажется, что запрашивает базу данных для каждой страницы отдельно, а не загружает все это. –
Если вы нажмете его на последнюю страницу >>, то он будет перебирать все страницы. При этом, если вам нужна страница 60 из 300, тогда будет повторяться 60 страниц. Вот почему предлагается создать фильтр, например, принимать и пропускать параметры, если ваши подробные данные начинаются и заканчиваются на одном и том же. –