PipelineBuffer.SetEndOfRowset Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Benachrichtigt PipelineBuffer darüber, dass dem Puffer von einer Komponente keine Zeilen mehr hinzugefügt werden.
public:
void SetEndOfRowset();
public void SetEndOfRowset ();
member this.SetEndOfRowset : unit -> unit
Public Sub SetEndOfRowset ()
Beispiele
Das folgende Beispiel zeigt eine Quellkomponente, die aufruft SetEndOfRowset , um zu signalisieren, dass es abgeschlossen ist, Zeilen zum Hinzufügen von Zeilen zu der PipelineBuffer.
using System;
using Microsoft.SqlServer.Dts.Pipeline;
using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
using Microsoft.SqlServer.Dts.Runtime.Wrapper;
namespace Microsoft.Samples.SqlServer.Dts
{
[DtsPipelineComponent(DisplayName = "SampleComponent")]
public class SampleSourceComponent: PipelineComponent
{
public override void ProvideComponentProperties()
{
IDTSOutput100 output = ComponentMetaData.OutputCollection.New();
output.Name = "SourceOutput";
IDTSOutputColumn100 column = output.OutputColumnCollection.New();
column.Name = "Column1";
column.SetDataTypeProperties(DataType.DT_R8, 0, 0, 0, 0);
}
public override void PrimeOutput(int outputs, int[] outputIDs, PipelineBuffer[] buffers)
{
double d = 123.5;
buffers[0].AddRow();
buffers[0].SetDouble(0, d);
buffers[0].SetEndOfRowset();
}
}
}
Imports System
Imports Microsoft.SqlServer.Dts.Pipeline
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Runtime.Wrapper
Namespace Microsoft.Samples.SqlServer.Dts
<DtsPipelineComponent(DisplayName="SampleComponent")> _
Public Class SampleSourceComponent
Inherits PipelineComponent
Public Overrides Sub ProvideComponentProperties()
Dim output As IDTSOutput100 = ComponentMetaData.OutputCollection.New
output.Name = "SourceOutput"
Dim column As IDTSOutputColumn100 = output.OutputColumnCollection.New
column.Name = "Column1"
column.SetDataTypeProperties(DataType.DT_R8, 0, 0, 0, 0)
End Sub
Public Overrides Sub PrimeOutput(ByVal outputs As Integer, ByVal outputIDs As Integer(), ByVal buffers As PipelineBuffer())
Dim d As Double = 123.5
buffers(0).AddRow
buffers(0).SetDouble(0, d)
buffers(0).SetEndOfRowset
End Sub
End Class
End Namespace
Hinweise
Datenflusskomponenten rufen diese Methode auf, wenn sie mit dem Hinzufügen von Zeilen zu einer OutputPipelineBuffer. Durch Aufrufen SetEndOfRowset des Datenflussmoduls wird benachrichtigt, dass eine Komponente das Hinzufügen von Zeilen zur PipelineBufferKomponente abgeschlossen hat. Die SetEndOfRowset Methode legt dann den Wert der EndOfRowset Eigenschaft true
auf den endgültigen Puffer fest.
Die PipelineBuffer erzeugt einen NotOutputBufferException Zeitpunkt, an dem die InputModePipelineBuffer Methode aufgerufen wird.