Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Kontrolki Podgląd raportów mogą służyć do integrowania raportów języka RDL (Report Definition Language) usług Reporting Services z aplikacjami WebForms i WinForms. Aby uzyskać szczegółowe informacje o najnowszych aktualizacjach, zobacz Informacje o wydaniu dla Kontrolek Podglądu Raportów dla formularzy WebForms i WinForms usług SSRS.
Dodawanie kontrolki Podgląd raportów do nowego projektu internetowego
Utwórz nową ASP.NET pustą witrynę sieci Web lub otwórz istniejący projekt ASP.NET.
Możesz użyć programu .NET Framework 4.6 lub dowolnej nowszej wersji.
Zainstaluj pakiet NuGet kontrolki Podgląd raportu za pomocą konsoli menedżera pakietów NuGet.
Install-Package Microsoft.ReportingServices.ReportViewerControl.WebFormsDodaj nową stronę .aspx do projektu i zarejestruj zestaw kontrolek Podgląd raportów do użycia na stronie.
<%@ Register assembly="Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" namespace="Microsoft.Reporting.WebForms" tagprefix="rsweb" %>Dodaj element ScriptManagerControl do strony.
Dodaj kontrolkę Podgląd raportów do strony. Poniższy fragment kodu można zaktualizować w celu odwołania się do raportu hostowanego na zdalnym serwerze raportów.
<rsweb:ReportViewer ID="ReportViewer1" runat="server" ProcessingMode="Remote"> <ServerReport ReportPath="" ReportServerUrl="" /> </rsweb:ReportViewer>
Ostatnia strona powinna wyglądać podobnie do poniższego przykładu.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="Sample" %>
<%@ Register assembly="Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" namespace="Microsoft.Reporting.WebForms" tagprefix="rsweb" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager runat="server"></asp:ScriptManager>
<rsweb:ReportViewer ID="ReportViewer1" runat="server" ProcessingMode="Remote">
<ServerReport ReportServerUrl="https://AContosoDepartment/ReportServer" ReportPath="/LatestSales" />
</rsweb:ReportViewer>
</form>
</body>
</html>
Aktualizowanie istniejącego projektu w celu używania kontrolki Podgląd raportów
Pamiętaj, aby zaktualizować wszystkie odwołania do zestawu do wersji 15.0.0.0, w tym web.config projektu i wszystkich stron .aspx odwołujących się do kontrolki przeglądarki.
Przykładowe zmiany web.config
<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
https://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.6">
<assemblies>
<!-- All assemblies updated to version 15.0.0.0. -->
<add assembly="Microsoft.ReportViewer.Common, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
<add assembly="Microsoft.ReportViewer.DataVisualization, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
<add assembly="Microsoft.ReportViewer.Design, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
<add assembly="Microsoft.ReportViewer.ProcessingObjectModel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
<add assembly="Microsoft.ReportViewer.WebDesign, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
<add assembly="Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
<add assembly="Microsoft.ReportViewer.WinForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
</assemblies>
<buildProviders>
<!-- Version updated to 15.0.0.0. -->
<add extension=".rdlc"
type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
</buildProviders>
</compilation>
<httpRuntime targetFramework="4.6"/>
<httpHandlers>
<!-- Version updated to 15.0.0.0 -->
<add path="Reserved.ReportViewerWebControl.axd" verb="*"
type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"
validate="false"/>
</httpHandlers>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false"/>
<modules runAllManagedModulesForAllRequests="true"/>
<handlers>
<!-- Version updated to 15.0.0.0 -->
<add name="ReportViewerWebControlHandler" verb="*" path="Reserved.ReportViewerWebControl.axd" preCondition="integratedMode"
type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
</handlers>
</system.webServer>
</configuration>
Przykład .aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="SampleAspx" %>
<!-- Update version to 15.0.0.0 -->
<%@ Register assembly="Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" namespace="Microsoft.Reporting.WebForms" tagprefix="rsweb" %>
<!DOCTYPE html>
Dodaj kontrolkę Podgląd raportów do nowego projektu Windows Forms
Utwórz nową aplikację Windows Forms lub otwórz istniejący projekt.
Możesz użyć programu .NET Framework 4.6 lub dowolnej nowszej wersji.
Zainstaluj pakiet NuGet kontrolki Podglądu raportów za pomocą konsoli menedżera pakietów NuGet.
Install-Package Microsoft.ReportingServices.ReportViewerControl.WinFormsDodaj nową kontrolkę z kodu lub dodaj kontrolkę do paska narzędzi.
private Microsoft.Reporting.WinForms.ReportViewer reportViewer1; private void InitializeComponent() { this.reportViewer1 = new Microsoft.Reporting.WinForms.ReportViewer(); this.SuspendLayout(); // // reportViewer1 // this.reportViewer1.Location = new System.Drawing.Point(168, 132); this.reportViewer1.Name = "reportViewer1"; this.reportViewer1.ServerReport.BearerToken = null; this.reportViewer1.Size = new System.Drawing.Size(396, 246); this.reportViewer1.TabIndex = 0; // // Form1 // this.Controls.Add(this.reportViewer1); }
Jak ustawić wysokość 100% w kontrolce Podgląd raportów
Po ustawieniu wysokości kontrolki wyświetlacza na 100%, element nadrzędny musi mieć określoną wysokość, lub wszyscy przodkowie muszą mieć wysokości procentowe.
Ustaw wysokość wszystkich przodków na 100%
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<style>
html,body,form,#div1 {
height: 100%;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div id="div1" >
<asp:ScriptManager runat="server"></asp:ScriptManager>
<rsweb:ReportViewer ID="ReportViewer1" runat="server" ProcessingMode="Remote" Height="100%" Width="100%">
<ServerReport ReportServerUrl="https://test/ReportServer" ReportPath="/testreport" />
</rsweb:ReportViewer>
</div>
</form>
</body>
</html>
Ustawianie atrybutu height obiektu nadrzędnego
Aby uzyskać więcej informacji na temat długości procentowej widoku, zobacz Viewport-percentage lengths (Długość procentowa widoku).
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
</head>
<body>
<form id="form1" runat="server">
<div style="height:100vh;">
<asp:ScriptManager runat="server"></asp:ScriptManager>
<rsweb:ReportViewer ID="ReportViewer1" runat="server" ProcessingMode="Remote" Height="100%" Width="100%">
<ServerReport ReportServerUrl="https://test/ReportServer" ReportPath="/testreport" />
</rsweb:ReportViewer>
</div>
</form>
</body>
</html>
Dodawanie kontrolki do paska narzędzi programu Visual Studio
Kontrolka podglądu raportów jest teraz dostarczana jako pakiet NuGet i domyślnie nie jest wyświetlana w przyborniku programu Visual Studio. Kontrolkę można dodać do przybornika ręcznie.
Zainstaluj pakiet NuGet dla formularzy WinForms lub WebForms, jak wspomniano wcześniej.
Usuń kontrolkę przeglądarki raportów wymienioną w przyborniku.
Kliknij prawym przyciskiem myszy gdziekolwiek w przyborniku i wybierz opcję Wybierz elementy....
W obszarze Składniki programu .NET Framework wybierz pozycję Przeglądaj.
Wybierz Microsoft.ReportViewer.WinForms.dll lub Microsoft.ReportViewer.WebForms.dll z zainstalowanego pakietu NuGet.
Uwaga / Notatka
Pakiet NuGet zostanie zainstalowany w katalogu rozwiązania projektu. Ścieżka do biblioteki DLL będzie podobna do następującej:
{Solution Directory}\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.{version}\lib\net40lub{Solution Directory}\packages\Microsoft.ReportingServices.ReportViewerControl.WebForms.{version}\lib\net40.Nowa kontrolka powinna być wyświetlana w narzędziowniku. Jeśli chcesz, możesz przenieść ją na inną zakładkę w przyborniku.
Typowe problemy
Kontrolka przeglądarki jest przeznaczona dla nowoczesnych przeglądarek. Kontrolka może nie działać zgodnie z oczekiwaniami, jeśli przeglądarka renderuje stronę przy użyciu trybu zgodności z programem IE. Witryny intranetowe mogą wymagać tagu meta, aby zastąpić domyślne zachowanie przeglądarki.
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
strony NuGet.org
Poniżej znajdują się linki do artykułów w witrynie NuGet.org na temat wersji WebForm i WinForm kontrolki Podgląd raportów:
- Microsoft.ReportingServices.ReportViewerControl.WebForms
- Microsoft.ReportingServices.ReportViewerControl.WinForms
Opinie na forum
Poinformuj zespół o problemach na forach usług Reporting Services.