Share via


Een SSIS-pakket uitvoeren met C#-code in een .NET-app

van toepassing op:SQL Server SSIS Integration Runtime in Azure Data Factory

Deze quickstart laat zien hoe u C#-code schrijft om verbinding te maken met een databaseserver en een SSIS-pakket uit te voeren.

U kunt Visual Studio, Visual Studio Code of een ander hulpprogramma van uw keuze gebruiken om een C#-app te maken.

Vereiste voorwaarden

Controleer voordat u begint of Visual Studio of Visual Studio Code is geïnstalleerd. Download de gratis Community-editie van Visual Studio of de gratis Visual Studio Code, via Visual Studio Downloads.

Een Azure SQL Database-server luistert op poort 1433. Als u verbinding probeert te maken met een Azure SQL Database-server vanuit een bedrijfsfirewall, moet deze poort zijn geopend in de firewall van het bedrijf om verbinding te kunnen maken.

Voor Azure SQL Database haalt u de verbindingsgegevens op

Als u het pakket wilt uitvoeren in Azure SQL Database, haalt u de verbindingsgegevens op die u nodig hebt om verbinding te maken met de SSIS Catalog-database (SSISDB). U hebt de volledig gekwalificeerde servernaam en aanmeldingsgegevens nodig in de procedures die volgen.

  1. Meld u aan bij het Azure-portaal.
  2. Selecteer SQL-databases in het linkermenu en selecteer vervolgens de SSISDB-database op de pagina SQL-databases .
  3. Controleer op de pagina Overzicht voor uw database de volledig gekwalificeerde servernaam. Als u de optie Klik om te kopiëren wilt zien, beweegt u de muisaanwijzer boven de servernaam.
  4. Als u de aanmeldingsgegevens van uw Azure SQL Database-server bent vergeten, gaat u naar de pagina SQL Database-server om de naam van de serverbeheerder weer te geven. U kunt het wachtwoord indien nodig opnieuw instellen.
  5. Selecteer Databaseverbindingsreeksen weergeven.
  6. Controleer de volledige ADO.NET verbindingsreeks. U kunt eventueel een SqlConnectionStringBuilder code gebruiken om deze verbindingsreeks opnieuw te maken met de afzonderlijke parameterwaarden die u opgeeft.

Een nieuw Visual Studio-project maken

  1. In Visual Studio, kies Bestand, Nieuw, Project.
  2. Vouw Visual C# uit in het dialoogvenster Nieuw project.
  3. Selecteer Console-app en voer run_ssis_project in voor de projectnaam.
  4. Selecteer OK om het nieuwe project in Visual Studio te maken en te openen.

Verwijzingen toevoegen

  1. Klik in Solution Explorer met de rechtermuisknop op de map Verwijzingen en selecteer Verwijzing toevoegen. Het dialoogvenster Reference Manager wordt geopend.
  2. Vouw assembly's uit in het dialoogvenster Reference Manager en selecteer Extensies.
  3. Selecteer de volgende twee verwijzingen om toe te voegen:
    • Microsoft.SqlServer.Management.Sdk.Sfc
    • Microsoft.SqlServer.Smo
  4. Selecteer de knop Bladeren om een verwijzing naar Microsoft.SqlServer.Management.IntegrationServices toe te voegen. (Deze assembly is alleen geïnstalleerd in de algemene assemblycache (GAC).) Het dialoogvenster Bestanden selecteren waarnaar moet worden verwezen , wordt geopend.
  5. Navigeer in het dialoogvenster De bestanden selecteren waarnaar moet worden verwezen naar de GAC-map die de assembly bevat. Normaal gesproken is C:\Windows\assembly\GAC_MSIL\Microsoft.SqlServer.Management.IntegrationServices\14.0.0.0__89845dcd8080cc91deze map.
  6. Selecteer de assembly (dat wil gezegd het .dll-bestand) in de map en selecteer Toevoegen.
  7. Selecteer OK om het dialoogvenster Reference Manager te sluiten en de drie verwijzingen toe te voegen. Als u wilt controleren of de verwijzingen er zijn, controleert u de lijst Met verwijzingen in Solution Explorer.
  8. Voeg het NuGet-pakket Microsoft.Data.SqlClient toe. Klik met de rechtermuisknop op het project in Solution Explorer, selecteer NuGet-pakketten beheren, zoek Microsoft.Data.SqlClienten installeer het.

De C#-code toevoegen

  1. Open Program.cs.

  2. Vervang de inhoud van Program.cs door de volgende code. Voeg de juiste waarden toe voor uw server, database, gebruiker en wachtwoord.

Opmerking

In het volgende voorbeeld wordt Windows-verificatie gebruikt. Als u SQL Server-verificatie wilt gebruiken, vervangt u het Integrated Security=SSPI; argument door User ID=<user name>;Password=<password>;. Als u verbinding maakt met een Azure SQL Database-server, kunt u geen Windows-verificatie gebruiken.

using Microsoft.SqlServer.Management.IntegrationServices;
using Microsoft.Data.SqlClient;

namespace run_ssis_package
{
    class Program
    {
        static void Main(string[] args)
        {
            // Variables
            string targetServerName = "localhost";
            string folderName = "Project1Folder";
            string projectName = "Integration Services Project1";
            string packageName = "Package.dtsx";

            // Create a connection to the server
            string sqlConnectionString = "Data Source=" + targetServerName +
                ";Initial Catalog=master;Integrated Security=SSPI;";
            SqlConnection sqlConnection = new SqlConnection(sqlConnectionString);

            // Create the Integration Services object
            IntegrationServices integrationServices = new IntegrationServices(sqlConnection);

            // Get the Integration Services catalog
            Catalog catalog = integrationServices.Catalogs["SSISDB"];

            // Get the folder
            CatalogFolder folder = catalog.Folders[folderName];

            // Get the project
            ProjectInfo project = folder.Projects[projectName];

            // Get the package
            PackageInfo package = project.Packages[packageName];

            // Run the package
            package.Execute(false, null);

        }
    }
}

De code uitvoeren

  1. Druk op F5 om de toepassing uit te voeren.
  2. Controleer of het pakket is uitgevoerd zoals verwacht en sluit vervolgens het toepassingsvenster.