Bagikan melalui


Task.Execute Metode

Definisi

Menjalankan tugas.

public:
 virtual Microsoft::SqlServer::Dts::Runtime::DTSExecResult Execute(Microsoft::SqlServer::Dts::Runtime::Connections ^ connections, Microsoft::SqlServer::Dts::Runtime::VariableDispenser ^ variableDispenser, Microsoft::SqlServer::Dts::Runtime::IDTSComponentEvents ^ componentEvents, Microsoft::SqlServer::Dts::Runtime::IDTSLogging ^ log, System::Object ^ transaction);
public virtual Microsoft.SqlServer.Dts.Runtime.DTSExecResult Execute (Microsoft.SqlServer.Dts.Runtime.Connections connections, Microsoft.SqlServer.Dts.Runtime.VariableDispenser variableDispenser, Microsoft.SqlServer.Dts.Runtime.IDTSComponentEvents componentEvents, Microsoft.SqlServer.Dts.Runtime.IDTSLogging log, object transaction);
abstract member Execute : Microsoft.SqlServer.Dts.Runtime.Connections * Microsoft.SqlServer.Dts.Runtime.VariableDispenser * Microsoft.SqlServer.Dts.Runtime.IDTSComponentEvents * Microsoft.SqlServer.Dts.Runtime.IDTSLogging * obj -> Microsoft.SqlServer.Dts.Runtime.DTSExecResult
override this.Execute : Microsoft.SqlServer.Dts.Runtime.Connections * Microsoft.SqlServer.Dts.Runtime.VariableDispenser * Microsoft.SqlServer.Dts.Runtime.IDTSComponentEvents * Microsoft.SqlServer.Dts.Runtime.IDTSLogging * obj -> Microsoft.SqlServer.Dts.Runtime.DTSExecResult
Public Overridable Function Execute (connections As Connections, variableDispenser As VariableDispenser, componentEvents As IDTSComponentEvents, log As IDTSLogging, transaction As Object) As DTSExecResult

Parameter

connections
Connections

Kumpulan koneksi yang digunakan oleh tugas.

variableDispenser
VariableDispenser

Objek VariableDispenser untuk mengunci variabel.

componentEvents
IDTSComponentEvents

Objek yang mengimplementasikan IDTSComponentEvents antarmuka.

log
IDTSLogging

Objek yang mengimplementasikan IDTSLogging antarmuka.

transaction
Object

Objek transaksi yang merupakan bagian dari kontainer. Nilai ini bisa null.

Mengembalikan

Nilai dari DTSExecResult enumerasi.

Contoh

Contoh kode berikut menunjukkan cara menjalankan paket yang berisi di pewaris Task, BulkInsertTask. Tugas Sisipkan Massal adalah contoh untuk sampel kode ini; tugas apa pun dapat dibuat di tempatnya.

using System;  
using System.Collections.Generic;  
using System.Text;  
using Microsoft.SqlServer.Dts.Runtime;  
using Microsoft.SqlServer.Dts.Tasks.BulkInsertTask  

namespace Microsoft.SqlServer.SSIS.Samples  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            Package p = new Package();  
            p.InteractiveMode = true;  
            p.OfflineMode = true;  
            Executable exec1 = pkg.Executables.Add("STOCK:BulkInsertTask");  
            TaskHost th = exec1 as TaskHost;  

            // Set the CheckConstraints and DataFileType properties.             
            th.Properties["CheckConstraints"].SetValue(th, true);  
            th.Properties["DataFileType"].SetValue(th, DTSBulkInsert_DataFileType.DTSBulkInsert_DataFileType_Native);  

            // Run the package that contains the task.  
            pkg.Execute();  

            // Review the results of the run.  
            if (taskH.ExecutionResult == DTSExecResult.Failure || taskH.ExecutionStatus == DTSExecStatus.Abend)  
                Console.WriteLine("Task failed or abended");  
            else  
                Console.WriteLine("Task ran successfully");  
        }  
    }  
}  
Imports System  
Imports System.Collections.Generic  
Imports System.Text  
Imports Microsoft.SqlServer.Dts.Runtime  
Imports Microsoft.SqlServer.Dts.Tasks.BulkInsertTask  

Namespace Microsoft.SqlServer.SSIS.Samples  
    Class Program  
        Shared  Sub Main(ByVal args() As String)  
            Dim p As Package =  New Package()   
            p.InteractiveMode = True  
            p.OfflineMode = True  
            Dim exec1 As Executable =  pkg.Executables.Add("STOCK:BulkInsertTask")   
            Dim th As TaskHost =  exec1 as TaskHost   

            ' Set the CheckConstraints and DataFileType properties.             
            th.Properties("CheckConstraints").SetValue(th, True)  
            th.Properties("DataFileType").SetValue(th, DTSBulkInsert_DataFileType.DTSBulkInsert_DataFileType_Native)  

            ' Run the package that contains the task.  
            pkg.Execute()  

            ' Review the results of the run.  
            If taskH.ExecutionResult = DTSExecResult.Failure Or taskH.ExecutionStatus = DTSExecStatus.Abend Then  
                Console.WriteLine("Task failed or abended")  
            Else   
                Console.WriteLine("Task ran successfully")  
            End If  
        End Sub  
    End Class  
End Namespace  

Keterangan

Metode Execute ini diwariskan oleh host tugas dan objek lain dari Executable kelas abstrak, melalui DtsContainer kelas , dan memungkinkan objek warisan dijalankan oleh mesin runtime. Metode Execute yang diwarisi oleh objek individual tidak umum digunakan dalam kode, dan disarankan agar Anda memanggil Execute metode jika Anda perlu menjalankan salah satu tugas atau kontainer dalam paket. Namun, Execute metode ini tersedia pada objek individual jika Anda menemukan keadaan unik di mana diperlukan.

Penggunaan Execute utama metode ini adalah diwariskan dan ditimpa saat Anda membuat tugas kustom. Untuk informasi selengkapnya tentang cara mengambil Execute alih metode, lihat Mengodekan Tugas Kustom.

Metode memanggil Execute metode secara implisit Validate sebelum paket berjalan. Semua tugas dalam paket ditinjau untuk pengaturan yang sesuai selama validasi, dan semua objek dalam paket ditinjau, termasuk paket, kontainer, dan komponen lain dalam paket.

Jika tidak ada masalah yang ditemui dalam fase validasi yang akan menyebabkan paket gagal, objek paket melanjutkan untuk memanggil Execute metode untuk setiap tugas dan objek dalam paket.

Teruskan nulltransaction untuk parameter saat TransactionOption properti adalah false. TransactionOption Jika properti benar, Anda dapat meneruskan nulltransaction parameter untuk menunjukkan bahwa kontainer mendukung transaksi tetapi tidak berpartisipasi.

Berlaku untuk