PipelineComponent.Validate Method

Verifies that the component is correctly configured. This method is not CLS-compliant.

Namespace: Microsoft.SqlServer.Dts.Pipeline
Assembly: Microsoft.SqlServer.PipelineHost (in microsoft.sqlserver.pipelinehost.dll)


<CLSCompliantAttribute(False)> _
Public Overridable Function Validate As DTSValidationStatus
public virtual DTSValidationStatus Validate ()
virtual DTSValidationStatus Validate ()
/** @attribute CLSCompliantAttribute(false) */ 
public DTSValidationStatus Validate ()
public function Validate () : DTSValidationStatus

Return Value

A value from the DTSValidationStatus enumeration that indicates the status of the component.


The Validate method is overridden by component developers to verify that the component is correctly configured. It is called repeatedly during package design, and one time before execution of the component. Components should not modify its ComponentMetaData during Validate.

The base class implementation of Validate checks for the existence of IDTSInputColumn90 objects whose LineageID property does not match the LineageID of an IDTSOutputColumn90 of an upstream component. Component developers should extend the base class Validate functionality by performing additional checks on the ComponentMetaData. Each component has different requirements for successful validation, but the following list provides some of the common items that should be validated.

Components should provide feedback to users when validation fails. Feedback is provided through the FireError and FireWarning methods and by the DTSValidationStatus return value. Calls to FireError and FireWarning are displayed in the Error List window in Business Intelligence Development Studio, and should provide users guidance on the validation failure. Of the four values in the DTSValidationStatus enumeration, only VS_ISVALID indicates successful validation. The other three values indicate different levels of failure. The following table describes the failure values in the enumeration and how they are interpreted by the SSIS Designer.




Indicates that the component is not configured incorrectly, but changes by the user to the ComponentMetaData will resolve the problems.


Indicates that the validation errors can be fixed by the component in its implementation of the ReinitializeMetaData method. SSIS Designer will prompt users that the component can repair itself when VS_NEEDSNEWMETADATA, and subsequently ReinitializeMetaData is called.


Indicates that the ComponentMetaData is corrupted and cannot be repaired by a call to ReinitializeMetaData or by edits to the component.

When the DelayValidation property of the data flow task is true, the design time calls to Validate are eliminated and the method is called before component execution.

For more information, see Validating a Data Flow Component.

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.


Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

See Also


PipelineComponent Class
PipelineComponent Members
Microsoft.SqlServer.Dts.Pipeline Namespace