Konfigurowanie Podglądu raportów na potrzeby renderowania asynchronicznego

Aby skonfigurować ReportViewer kontrolki serwera sieci Web do renderowania asynchroniczną, należy ustawić podczas renderowania i przetwarzanie tryby. Zachowanie renderowania jest określona przez AsyncRendering określonym przez właściwość w formancie i zachowania przetwarzania ProcessingMode właściwości. Kombinacja tych dwóch właściwości definiuje sposób zostanie renderowania stron ASP.NET.

W poniższej tabeli opisano zachowanie ReportViewer kontrolować do różnych celów renderowania i przetwarzanie tryby.

Ustawienie właściwości

Tryb lokalny przetwarzania (klasa LocalReport)

Tryb zdalnej przetwarzania (klasa ServerReport)

AsyncRendering = True

  • Używa IFRAME

  • Nie wpisu ponownie 1

  • Przetwarzanie synchroniczne

  • Używa IFRAME

  • Nie wpisu ponownie 1

  • Przetwarzanie asynchroniczne

AsyncRendering = False

  • Wbudowany HTML

  • Wpis Wstecz

  • Przetwarzanie synchroniczne

  • Wbudowany HTML

  • Wpis Wstecz

  • Przetwarzanie synchroniczne

Jeśli AsyncRendering ma wartość True, wpis zwrotnych będzie mieć miejsce, jeśli subskrybować zdarzeń nawigacji w kodzie, z wyjątkiem zdarzenie przeglądania szczegółowego. To zdarzenie wpis zostanie ponownie bez względu na to zdarzenie subskrypcji. Jeśli właściwość ma wartość False, Twój wpis zwrotnych nastąpi, czy subskrybowany przez Ciebie zdarzenia lub nie.

Tryb asynchroniczne

Gdy AsyncRendering jest ustawiona właściwość True, ReportViewer spowoduje, że raport w obrębie elementu IFRAME na stronie. Przy użyciu elementu IFRAME, pozostała część strony można ładować bez blokowana przez ReportViewer kontroli.

Oba tryby lokalnymi i zdalnymi przetwarzania użycia elementu IFRAME do renderowania raportu. Jednak jest różnica w sposobie ReportViewer renderuje wskaźnik postępu, jeśli jest włączona. Jeśli raport jest przetwarzane lokalnie, wskaźnik postępu raportu nie można renderować do ukończenia wszystkich operacji przetwarzania danych. Podczas przetwarzania raportu w zdalnie wskaźnik postępu, jeśli jest włączona, podczas jest wyświetlany przetwarzanych na serwerze raportów.

ms252090.collapse_all(pl-pl,VS.140).gifUwagi dotyczące XHTML i kontrolki serwera sieci Web ReportViewer

Jeśli zostanie skonfigurowana ReportViewer sieci Web kontrolki serwera do działania w trybie asynchroniczne w aplikacji, która została napisana XHTML, należy wykonać kroki określonych do wyświetlenia ReportViewer kontrolować prawidłowo. Jeśli ReportViewer kontroli używa względnych wysokości (na przykład, jeśli wysokość jest określony jako procent dostępnego miejsca), kontrolki zwijany do wysokości zero (0) pikseli wyniku sposób renderowania ramek i znaczników DIV w zawierających tabele w XHTML. Można uniknąć tego problemu, wykonując jedną z następujących czynności:

  • Jawnie ustawiać wysokość na ReportViewer kontroli rzeczywista wartość zamiast wartości procentowej.

  • Dodaj następujące ustawienie stylu do tagu < head >: <style>html,body,form {height:100%}</style>. Wymuszając HTML, treści i tagów formularza do wysokości, ramkę używane w ReportViewer kontroli robią się również do maksymalnej wysokości, dzięki czemu widoczne na stronie.

  • Usuń xhtml doctype ze strony.

Tryb synchroniczny

When the AsyncRendering property is set the False the ReportViewer will render the report as inline HTML within the rest of the page. Ponieważ kod HTML jest wbudowany, pozostałej części strony zostaną zablokowane podczas przetwarzania i renderowania raportu.

Uwaga

Jeśli raport zawiera planu dokumentu, a jest renderowany w trybie synchroniczne, planie dokumentu nie zostaną wyświetlone.

Zobacz też

Informacje

ReportViewer

Właściwości Podglądu raportów

Koncepcje

Ustawienia pliku Web.config dla Podglądu raportów

Serwer sieci Web Podglądu raportów i kontrolki formularzy systemu Windows

Konfigurowanie Podglądu raportów na potrzeby przetwarzania lokalnego

Konfigurowanie Podglądu raportów na potrzeby przetwarzania zdalnego