Executables.Item Property
Gets an Executable object from the collection.
Namespace: Microsoft.SqlServer.Dts.Runtime
Assembly: Microsoft.SqlServer.ManagedDTS (in Microsoft.SqlServer.ManagedDTS.dll)
Syntax
'Declaration
Public ReadOnly Default Property Item ( _
index As Object _
) As Executable
Get
'Usage
Dim instance As Executables
Dim index As Object
Dim value As Executable
value = instance(index)
public Executable this[
Object index
] { get; }
public:
property Executable^ default[Object^ index] {
Executable^ get (Object^ index);
}
member Item : Executable
JScript supports the use of indexed properties, but not the declaration of new ones.
Parameters
- index
Type: System.Object
The index of the Executable object to return.
Property Value
Type: Microsoft.SqlServer.Dts.Runtime.Executable
An Executable object from the collection.
Remarks
If the call to the Contains method returns true, you can access the specified element in the collection by using the syntax Executables[index]. If the Contains returns false, this property throws an exception. In C#, this property is the indexer for the Executables class.
Examples
The following example is a modification of the sample found in Remove. It removes the executable using the item syntax.
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)
{
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.
// Remove the exectuable using the Executables[x] item syntax.
DtsContainer c = (DtsContainer)pkg.Executables[0];
pkg.Executables.Remove(c);
// 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)
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.
' Remove the exectuable using the Executables[x] item syntax.
Dim c As DtsContainer = CType(pkg.Executables(0), DtsContainer)
pkg.Executables.Remove(c)
' 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
Sample Output:
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