次の方法で共有


Join メソッド

既存のコンテナ オブジェクトまたはタスク オブジェクトを Executables コレクションに追加します。

名前空間:  Microsoft.SqlServer.Dts.Runtime
アセンブリ:  Microsoft.SqlServer.ManagedDTS (Microsoft.SqlServer.ManagedDTS.dll)

構文

'宣言
Public Sub Join ( _
    executable As Executable _
)
'使用
Dim instance As Executables
Dim executable As Executable

instance.Join(executable)
public void Join(
    Executable executable
)
public:
void Join(
    Executable^ executable
)
member Join : 
        executable:Executable -> unit 
public function Join(
    executable : Executable
)

パラメーター

説明

あるコンテナ (移動元) から別のコンテナ (移動先) にコンテナまたはタスクを移動する場合は、Join を使用します。移動先コンテナで Join を呼び出す前に、Remove を使用して移動元コンテナからオブジェクトを削除する必要があります。

使用例

次の例では、一括挿入タスクを作成して、いくつかのプロパティを設定します。次に一括挿入タスクを最初のパッケージから削除し、2 番目のパッケージに追加します。最初のパッケージに格納されている間は、プロパティが変更されません。

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

namespace Executables_API
{
    class Program
    {
        static void Main(string[] args)
        {
                      // Create the package and add the BulkInsertTask.
                      Package pkg = new Package();
                      Executable exec = pkg.Executables.Add("STOCK:BulkInsertTask");
                      TaskHost myTask = exec as TaskHost;
                      BulkInsertTask myBI = myTask.InnerObject as BulkInsertTask;
                      myBI.DebugMode= false;
                      myBI.CheckConstraints = false;
                      myBI.KeepIdentity = true;

                      // Obtain the collection.
                      Executables pgkExecs = pkg.Executables;
                      // Show the number of executables in the collection.
                      Console.WriteLine("The first package contains {0} executables", pgkExecs.Count);

                       // It is a requirement to Remove the task from the
                      // existing package before adding it to the new package.
                      pkg.Executables.Remove(0);
                      // Show the number of executables in the collection afterwards.
                      Console.WriteLine("The first package now contains {0} executables", pgkExecs.Count);

                      Package pkg2 = new Package();
                      Executables p2Execs = pkg2.Executables;
                      // Show the number of executables in the second collection.
                      Console.WriteLine("The second package initially contains {0} executables", p2Execs.Count);
                      // Join the task from pkg to pkg2.
                      pkg2.Executables.Join(myTask);
                      // Show the number of executables in the second collection after Join.
                      Console.WriteLine("The second package now contains {0} executables", p2Execs.Count);
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Tasks.BulkInsertTask
 
Namespace Executables_API
    Class Program
        Shared  Sub Main(ByVal args() As String)
                      ' Create the package and add the BulkInsertTask.
                      Dim pkg As Package =  New Package() 
                      Dim exec As Executable =  pkg.Executables.Add("STOCK:BulkInsertTask") 
                      Dim myTask As TaskHost =  exec as TaskHost 
                      Dim myBI As BulkInsertTask =  myTask.InnerObject as BulkInsertTask 
                      myBI.DebugMode= False
                      myBI.CheckConstraints = False
                      myBI.KeepIdentity = True
 
                      ' Obtain the collection.
                      Dim pgkExecs As Executables =  pkg.Executables 
                      ' Show the number of executables in the collection.
                      Console.WriteLine("The first package contains {0} executables", pgkExecs.Count)
 
                       ' It is a requirement to Remove the task from the
                      ' existing package before adding it to the new package.
                      pkg.Executables.Remove(0)
                      ' Show the number of executables in the collection afterwards.
                      Console.WriteLine("The first package now contains {0} executables", pgkExecs.Count)
 
                      Dim pkg2 As Package =  New Package() 
                      Dim p2Execs As Executables =  pkg2.Executables 
                      ' Show the number of executables in the second collection.
                      Console.WriteLine("The second package initially contains {0} executables", p2Execs.Count)
                      ' Join the task from pkg to pkg2.
                      pkg2.Executables.Join(myTask)
                      ' Show the number of executables in the second collection after Join.
                      Console.WriteLine("The second package now contains {0} executables", p2Execs.Count)
        End Sub
    End Class
End Namespace

サンプルの出力 :

The first package contains 1 executables

The first package now contains 0 executables

The second package initially contains 0 executables

The second package now contains 1 executables