Freigeben über


ForEachLoop.ForEachEnumerator Eigenschaft

Definition

Ruft einen Host für ForEachEnumerator ab oder legt ihn fest.

public:
 property Microsoft::SqlServer::Dts::Runtime::ForEachEnumeratorHost ^ ForEachEnumerator { Microsoft::SqlServer::Dts::Runtime::ForEachEnumeratorHost ^ get(); void set(Microsoft::SqlServer::Dts::Runtime::ForEachEnumeratorHost ^ value); };
public Microsoft.SqlServer.Dts.Runtime.ForEachEnumeratorHost ForEachEnumerator { get; set; }
member this.ForEachEnumerator : Microsoft.SqlServer.Dts.Runtime.ForEachEnumeratorHost with get, set
Public Property ForEachEnumerator As ForEachEnumeratorHost

Eigenschaftswert

Gibt einen Wert vom Typ ForEachEnumeratorHost zurück.

Beispiele

Im folgenden Codebeispiel wird ein ForEachLoop und ein ForEachEnumerator aus dem Host erstellt.

// Create the new application and package.  
Application app = new Application();  
Package package = new Package();  

// Create ForEachLoop task  
Executables executables = package.Executables;  
ForEachLoop forEachLoop = executables.Add("STOCK:FOREACHLOOP") as ForEachLoop;  

// Create a VariableMappings and VariableMapping objects.  
ForEachVariableMappings forEachVariableMappings = forEachLoop.VariableMappings;  
ForEachVariableMapping forEachVariableMapping = forEachVariableMappings.Add();  

// Create a mapping between the variable and its value.  
forEachVariableMapping.VariableName = @"Id";  
forEachVariableMapping.ValueIndex = 0;  

// Create a ForEachEnumeratorInfo from the application.  
// Create a Host for the ForEachItem enumerator.  
// Set the CollectionEnumerator to true to indicate that   
// the iteration is over a collection.  
ForEachEnumeratorInfo forEachEnumeratorInfo = app.ForEachEnumeratorInfos["Foreach Item Enumerator"];  
ForEachEnumeratorHost forEachEnumeratorHost = forEachEnumeratorInfo.CreateNew();  
forEachEnumeratorHost.CollectionEnumerator = true;  

// Create the appropriate type of ForEachEnumerator from the host.  
forEachLoop.ForEachEnumerator = forEachEnumeratorHost;  

// Setup the Collection enumerator.  
ForEachItemEnumerator forEachItemEnumerator = forEachEnumeratorHost.InnerObject as ForEachItemEnumerator;  

ForEachItem forEachItem = forEachItemEnumerator.Items.Add();  
ForEachItemValue forEachItemValue = forEachItem.Add();  
forEachItemValue.Value = 1;  
forEachItemValue = forEachItem.Add();  
forEachItemValue.Value = "A";  

// Add other tasks to ForEachLoop container  
// and set appropriate values.  

// Run the package.  
DTSExecResult status = package.Execute();  
' Create the new application and package.  
Dim app As Application =  New Application()   
Dim package As Package =  New Package()   

' Create ForEachLoop task  
Dim executables As Executables =  package.Executables   
Dim forEachLoop As ForEachLoop =  executables.Add("STOCK:FOREACHLOOP") as ForEachLoop   

' Create a VariableMappings and VariableMapping objects.  
Dim forEachVariableMappings As ForEachVariableMappings =  forEachLoop.VariableMappings   
Dim forEachVariableMapping As ForEachVariableMapping =  forEachVariableMappings.Add()   

' Create a mapping between the variable and its value.  
forEachVariableMapping.VariableName = "Id"  
forEachVariableMapping.ValueIndex = 0  

' Create a ForEachEnumeratorInfo from the application.  
' Create a Host for the ForEachItem enumerator.  
' Set the CollectionEnumerator to true to indicate that   
' the iteration is over a collection.  
Dim forEachEnumeratorInfo As ForEachEnumeratorInfo =  app.ForEachEnumeratorInfos("Foreach Item Enumerator")   
Dim forEachEnumeratorHost As ForEachEnumeratorHost =  forEachEnumeratorInfo.CreateNew()   
forEachEnumeratorHost.CollectionEnumerator = True  

' Create the appropriate type of ForEachEnumerator from the host.  
forEachLoop.ForEachEnumerator = forEachEnumeratorHost  

' Setup the Collection enumerator.  
Dim forEachItemEnumerator As ForEachItemEnumerator =  forEachEnumeratorHost.InnerObject as ForEachItemEnumerator   

Dim forEachItem As ForEachItem =  forEachItemEnumerator.Items.Add()   
Dim forEachItemValue As ForEachItemValue =  forEachItem.Add()   
forEachItemValue.Value = 1  
forEachItemValue = forEachItem.Add()  
forEachItemValue.Value = "A"  

' Add other tasks to ForEachLoop container  
' and set appropriate values.  

' Run the package.  
Dim status As DTSExecResult =  package.Execute()  

Gilt für: