Поделиться через


Метод GetNextPasteID

Gets the next available ID that a data flow task generates.

Пространство имен:  Microsoft.SqlServer.Dts.Pipeline.Wrapper
Сборка:  Microsoft.SqlServer.DTSPipelineWrap (в Microsoft.SqlServer.DTSPipelineWrap.dll)

Синтаксис

'Декларация
Public Overridable Function GetNextPasteID As Integer
'Применение
Dim instance As MainPipeClass
Dim returnValue As Integer

returnValue = instance.GetNextPasteID()
public virtual int GetNextPasteID()
public:
virtual int GetNextPasteID()
abstract GetNextPasteID : unit -> int 
override GetNextPasteID : unit -> int 
public function GetNextPasteID() : int

Возвращаемое значение

Тип System. . :: . .Int32
The next available unique ID in the data flow layout.

Реализует интерфейс

IDTSPipeline100. . :: . .GetNextPasteID() () () ()

Замечания

The data flow task generates object IDs in sequence. This method retrieves the next available unique ID and increments.

Примеры

The following code example demonstrates the sequential creation of IDs assigned to data flow objects.

using System;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;

namespace Microsoft.Samples.SqlServer.Dts
{
    public class Class1
    {
        public static void Main(string []args)
        {
            Package p = new Package();
            MainPipe mp = ((TaskHost)p.Executables.Add("SSIS.Pipeline.2")).InnerObject as MainPipe;
            for(int x=0; x<10; x++)
            {
                Console.WriteLine("NextPasteID: " + mp.GetNextPasteID());
                Console.WriteLine("MetaDataID: " + mp. ComponentMetaDataCollection.New().ID);
            }
        }
    }

}
Imports System 
Imports Microsoft.SqlServer.Dts.Runtime 
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper 
Namespace Microsoft.Samples.SqlServer.Dts 

 Public Class Class1 

   Public Shared Sub Main(ByVal args As String()) 
     Dim p As Package = New Package 
     Dim mp As MainPipe = CType(CType(p.Executables.Add("SSIS.Pipeline.2"), TaskHost).InnerObject, MainPipe) 
     Dim x As Integer = 0 
     While x < 10 
       Console.WriteLine("NextPasteID: " + mp.GetNextPasteID) 
       Console.WriteLine("MetaDataID: " + mp.ComponentMetaDataCollection.New.ID) 
       System.Math.Min(System.Threading.Interlocked.Increment(x),x-1) 
     End While 
   End Sub 
 End Class 
End Namespace

The above code generates the following output.

NextPasteID: 1

MetaDataID: 2

NextPasteID: 3

MetaDataID: 4

NextPasteID: 5

MetaDataID: 6

NextPasteID: 7

MetaDataID: 8

NextPasteID: 9

MetaDataID: 10

NextPasteID: 11

MetaDataID: 12

NextPasteID: 13

MetaDataID: 14

NextPasteID: 15

MetaDataID: 16

NextPasteID: 17

MetaDataID: 18

NextPasteID: 19

MetaDataID: 20