Я отображаю отчет служб отчетов SQL Server через веб-службу, используя следующий код:
LoadReportRequest req = new LoadReportRequest(new TrustedUserHeader(), "Report", null);
LoadReportResponse report = await _reportingClient.LoadReportAsync(req);
ParameterValue[] parameters =
{
new ParameterValue { Name = "Id", Value = labelId.ToString() }
};
SetExecutionParameters3Request pReq = new SetExecutionParameters3Request(report.ExecutionHeader, new TrustedUserHeader(),parameters, "en-us");
await _reportingClient.SetExecutionParameters3Async(pReq);
RenderRequest rReq = new enderRequest(report.ExecutionHeader, new TrustedUserHeader(), "PDF", null);
var response = await reportingClient.RenderAsync(rReq);
Я получаю следующие измерения времени:
- Отчет о загрузке: 13 с
- Установить параметры выполнения: 8 с
- Отчет о визуализации: 14 с
Всего 35 с. Для довольно простого отчета, около 20 полей, прочитанных изодин стол.Просматривая журнал выполнения в SSRS, он говорит, что общее время рендеринга отчета составляет около 6 с.
Рендеринг отчета через веб-портал SSRS выполняется очень быстро.
В чем может быть проблема?