Registreer een standaard .NET Framework Data Provider (SSRS)

Om een externe .NET Framework-dataprovider te gebruiken om data op te halen voor een Reporting Services-rapportdataset, moet je de .NET Framework-dataprovider-assembly op twee locaties uitrollen en registreren: op de rapport-authoring-client en op de rapportserver. Op de rapportauthoring-client moet je de dataprovider registreren als databrontype en deze koppelen aan een queryontwerper. Je kunt deze dataprovider vervolgens selecteren als een type databron wanneer je een rapportdataset aanmaakt. De bijbehorende querydesigner opent zich om je te helpen queries te maken voor dit databrontype. Op de rapportserver moet je de dataprovider registreren als databrontype. Je kunt vervolgens gepubliceerde rapporten verwerken die gegevens uit een databron ophalen met behulp van deze dataprovider.

Externe dataproviders bieden niet noodzakelijkerwijs alle functionaliteit die beschikbaar is met de Reporting Services dataverwerkingsextensies. Zie Data Sources Supported by Reporting Services (SSRS)voor meer informatie. Om meer te weten te komen over het uitbreiden van de functionaliteit van een . .NET Framework-gegevensprovider, zie Een extensie voor gegevensverwerking implementeren.

Je hebt beheerdersgegevens nodig om dataproviders te installeren en te registreren.

Registratie van een .NET Framework Data Provider op de Report Server

Om gepubliceerde rapporten te verwerken die deze .NET Framework-dataprovider op de rapportserver gebruiken, moet je de assembly op de rapportserver installeren. Je moet twee configuratiebestanden aanpassen. Pas rsreportserver.config aan om de gegevensleverancier te registreren. Pas rssrvpolicy.config aan om code-toegangsbeveiligingsrechten voor de assembly te verlenen.

Om een dataprovider-assembly op de rapportserver te installeren

  1. Navigeer naar de standaardlocatie van de bin-map op de rapportserver waarop je de .NET Framework dataprovider wilt gebruiken. De standaardlocatie van de Report Server bin-map is <drive>:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER Reporting Services\\ReportServer\bin.

  2. Kopieer je assembly van je staginglocatie naar de bin-directory van de rapportserver. Als alternatief kun je je assembly laden in de global assembly cache (GAC). Voor meer informatie, zie Working with Assemblies and the Global Assembly Cache in de .NET Framework SDK-documentatie op MSDN.

Om een .NET-dataprovider te registreren op de rapportserver

  1. Maak een back-up van het RSReportServer.config-bestand in de ReportServer-hoofdmap voor bin.

  2. Open RSReportServer.config. Je kunt het configuratiebestand openen met Visual Studio of een eenvoudige teksteditor, zoals Notepad.

  3. Zoek het Data-element in het RSReportServer.config bestand. Een vermelding voor de .NET Framework dataprovider moet worden gemaakt op de volgende locatie:

    <Extensions>  
       <Data>  
          <Extension Your data provider configuration information goes here />  
       </Data>  
    </Extensions>  
    
  4. Voeg een vermelding toe voor de .NET Framework dataprovider.

    Attribute Description
    Naam Geef een unieke naam aan de dataprovider, bijvoorbeeld MyNETDataProvider. De maximale lengte voor het Naam-attribuut is 255 tekens. De naam moet uniek zijn tussen alle vermeldingen binnen het extensie-element van een configuratiebestand. De waarde die je hier opneemt verschijnt in de dropdownlijst met databrontypen wanneer je een nieuwe databron aanmaakt.
    Typ Voer een komma-gescheiden lijst in die de volledig gekwalificeerde naamruimte bevat van de klasse die de IDbConnection interface implementeert, gevolgd door de naam van de .NET Framework data provider assembly (exclusief de .dll bestandsnaamextensie).

    De vermelding kan bijvoorbeeld lijken op het volgende voor een DLL die is geïnstalleerd in de report server bin-directory:

    <Extension Name="MyNETDataProvider" Type="CompanyName.ExtensionName.DataProviderConnectionClass, DataProviderAssembly" />   
    

    Als je je assembly in de global assembly cache (GAC) laadt, moet je de sterke naameigenschappen opgeven. Voorbeeld:

    <Extension Name="MyNETDataProvider" Type="CompanyName.ExtensionName.DataProviderConnectionClass, DataProviderAssembly,Version=1.0.0.0, Culture=neutral, PublicKeyToken=MyPublicToken"/>  
    

Om het codegroepbeleid voor een .NET-dataprovider in te stellen

  1. Maak een back-up van het rssrvpolicy.config-bestand in de ReportServer-hoofdmap voor bin.

  2. Open rssrvpolicy.config. Je kunt het configuratiebestand openen met Visual Studio of een eenvoudige teksteditor zoals Notepad.

  3. Zoek het CodeGroup-element in het rssrvpolicy.config-bestand.

  4. Voeg een codegroep toe voor de data provider assembly die FullTrust-toestemming verleent. Je codegroep kan er als volgt uitzien:

    <CodeGroup class="UnionCodeGroup"  
       version="1"  
       PermissionSetName="FullTrust"  
       Name="ThisDataProviderCodeGroup"  
       Description="Code group for the .NET data provider">  
          <IMembershipCondition class="UrlMembershipCondition"  
             version="1"  
             Url=  
    "C:\Program Files\Microsoft SQL Server\MSRS10_50.MSSQLSERVER\Reporting Services\ReportServer\bin\DataProviderAssembly.dll"  
           />  
    </CodeGroup>  
    

URL-lidmaatschap is slechts één van de lidmaatschapsvoorwaarden die je kunt kiezen voor de dataprovider.

Verificatie van de inzet en registratie

Je kunt verifiëren of de dataprovider succesvol is geïmplementeerd op de rapportserver door het webportaal te openen en te controleren of de dataprovider is opgenomen in de lijst met beschikbare databronnen. Voor meer informatie over het webportaal en databronnen, zie Gedeelde Gegevensbronnen (SSRS) aanmaken, wijzigen en verwijderen.

Registratie van een .NET Framework Data Provider op de Report Designer Client

Om rapporten te maken die deze .NET Framework-dataprovider als databron gebruiken, moet je de assembly installeren op je clientcomputer die Report Designer draait. Je moet twee configuratiebestanden aanpassen. Pas RSReportDesigner.config aan om de dataprovider als databron te registreren en de generieke querydesigner te gebruiken. Pas RSPreviewPolicy.config aan om code-toegangsbeveiligingsrechten voor de dataprovider-assembly te verlenen.

Om een dataprovider-assembly te installeren op de Report Designer-client

  1. Navigeer naar de standaardlocatie van de PrivateAssemblies-map in de Report Designer-client waarop je de .NET Framework dataprovider wilt gebruiken. De standaardlocatie van de PrivateAssemblies-map is <drive>:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies.

  2. Kopieer je assembly van je staginglocatie naar de PrivateAssemblies-map van de Report Designer-client. Als alternatief kun je je assembly laden in de global assembly cache (GAC). Voor meer informatie, zie Working with Assemblies and the Global Assembly Cache in de .NET Framework SDK-documentatie op MSDN.

Om een .NET-dataprovider te registreren op de Report Designer-client

  1. Maak een back-up van het RSReportDesigner.config-bestand in de PrivateAssemblies-map.

  2. Open RSReportDesigner.config met Visual Studio of een eenvoudige teksteditor zoals Notepad.

  3. Zoek het Data-element in het RSReportDesigner.config bestand. Een vermelding voor de gegevensleverancier moet worden gedaan op de volgende locatie:

    <Extensions>  
       <Data>  
          <Extension Your data provider configuration information goes here />  
       </Data>  
    </Extensions>  
    
  4. Voeg een vermelding toe voor de gegevensleverancier.

    Attribute Description
    Naam Geef een unieke naam aan de dataprovider, bijvoorbeeld MyNETDataProvider. De maximale lengte voor het Naam-attribuut is 255 tekens. De naam moet uniek zijn tussen alle vermeldingen binnen het extensie-element van een configuratiebestand. De waarde die je hier opneemt, verschijnt in de dropdownlijst van databrontypen wanneer je een nieuwe databron aanmaakt.
    Typ Voer een komma-gescheiden lijst in die de volledig gekwalificeerde naamruimte bevat van de klasse die de IDbConnection interface implementeert, gevolgd door de naam van de .NET Framework data provider assembly (exclusief de .dll bestandsnaamextensie).

    Bijvoorbeeld, de vermelding kan het volgende lijken voor een DLL die is geïmplementeerd in de Visual Studio PrivateAssemblies-directory:

    <Extension Name="MyNETDataProvider" Type="CompanyName.ExtensionName.DataProviderConnectionClass, DataProviderAssembly" />   
    

    Als je je assemblage in de GAC laadt, moet je de sterke naameigenschappen aanleveren. Voorbeeld:

    <Extension Name="MyNETDataProvider" Type="CompanyName.ExtensionName.DataProviderConnectionClass, DataProviderAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=MyPublicToken"/>  
    
  5. Zoek het Designer-element in het RSReportDesigner.config-bestand. Een vermelding voor de .NET Framework dataprovider moet worden gemaakt op de volgende locatie:

    <Extensions>  
       <Designer>  
          <Your data provider configuration information goes here>  
       </Designer>  
    </Extensions>  
    
  6. Voeg de volgende vermelding toe aan het RSReportDesigner.config-bestand onder het Designer-element . Je moet alleen het Name-attribuut vervangen door de naam die je in eerdere vermeldingen hebt gegeven.

    <Extension Name="MyNETDataProvider" Type="Microsoft.ReportingServices.QueryDesigners.GenericQueryDesigner,Microsoft.ReportingServices.QueryDesigners"/>  
    

Om het codegroepbeleid in te stellen voor een .NET-dataprovider op de Report Designer-client

  1. Maak een back-up van het RSPreviewPolicy.config-bestand in de PrivateAssemblies-map.

  2. Open RSPreviewPolicy.config met Visual Studio of een eenvoudige teksteditor, zoals Kladdblok.

  3. Zoek het CodeGroup-element in het RSPreviewPolicy.config-bestand.

  4. Voeg een codegroep toe voor de .NET Framework data provider assembly die FullTrust-toestemming verleent. Je codegroep kan er als volgt uitzien:

    <CodeGroup class="UnionCodeGroup"  
       version="1"  
       PermissionSetName="FullTrust"  
       Name="ThisDataProviderCodeGroup"  
       Description="Code group for the .NET data provider">  
          <IMembershipCondition class="UrlMembershipCondition"  
             version="1"  
             Url=  
    " C:\Program Files\Microsoft Visual Studio 9\Common7\IDE\PrivateAssemblies\DataProviderAssembly.dll"  
           />  
    </CodeGroup>  
    

URL-lidmaatschap is slechts één van de lidmaatschapsvoorwaarden die je kunt kiezen voor de dataprovider.

Het verifiëren van de implementatie en registratie op de Report Designer Client

Voordat je de implementatie kunt verifiëren, moet je alle instanties van Visual Studio op je lokale computer sluiten. Nadat u alle huidige sessies heeft afgerond, kunt u verifiëren of uw dataprovider succesvol is geïmplementeerd in Report Designer door een nieuw rapportproject aan te maken in Visual Studio. De gegevensleverancier moet worden opgenomen in de lijst van beschikbare databrontypen wanneer je een nieuwe dataset voor je rapport aanmaakt.

Overwegingen over het platform

Op een 64-bit (x64) platform draait SQL Server Data Tools (SSDT) in 32-bit WOW-modus. Wanneer je rapporten schrijft op een x64-platform, heb je 32-bits dataproviders nodig die op de report authoring-client zijn geïnstalleerd om je rapporten te kunnen previewen. Als je het rapport op hetzelfde systeem publiceert, heb je x64-dataproviders nodig om het rapport in het webportaal te bekijken.

SQL Server Data Tools (SSDT) wordt niet ondersteund voor op Itanium gebaseerde platforms.

De dataverwerkingsextensies die met Reporting Services worden geïnstalleerd, moeten native worden gecompileerd voor elk platform en op de juiste locaties worden geïnstalleerd. Als je een custom dataprovider of een standaard .NET Framework-dataprovider registreert, moet deze native worden gecompileerd voor het juiste platform en op de juiste locaties worden geïnstalleerd. Als je op een 32-bit platform draait, moet de dataprovider gecompileerd zijn voor een 32-bit platform. Als je op een 64-bit platform draait, moet de dataprovider gecompileerd zijn voor het 64-bit platform. Je kunt geen 32-bit dataprovider gebruiken die is gekoppeld aan 64-bit interfaces op een 64-bit platform. Controleer uw software van derden voor informatie over of de dataprovider op het geïnstalleerde platform zal werken. Voor meer informatie over dataproviders en platformondersteuning, zie Data Sources Supported by Reporting Services (SSRS).