Share via


IDTSDesigntimeComponent100.ReinitializeMetaData Method

Fixes any errors identified during design-time validation that result in the component returning VS_NEEDSNEWMETADATA.

Namespace:  Microsoft.SqlServer.Dts.Pipeline.Wrapper
Assembly:  Microsoft.SqlServer.DTSPipelineWrap (in Microsoft.SqlServer.DTSPipelineWrap.dll)

Syntax

'Declaration
Sub ReinitializeMetaData
'Usage
Dim instance As IDTSDesigntimeComponent100

instance.ReinitializeMetaData()
void ReinitializeMetaData()
void ReinitializeMetaData()
abstract ReinitializeMetaData : unit -> unit 
function ReinitializeMetaData()

Remarks

The ReinitializeMetaData method is called in response to a component returning VS_NEEDSNEWMETADATA from Validate. During this method, components fix any errors that were identified in Validate, if those errors can be fixed by the component.

Examples

The following example calls ReinitializeMetaData in response to a component failing validation.

Package p = new Package();
MainPipe dataFlow = ((TaskHost)p.Executables.Add("SSIS.Pipeline.2")).InnerObject as MainPipe;

IDTSComponentMetaData100 md = dataFlow.ComponentMetaDataCollection.New();
md.ComponentClassID = "DTSAdapter.OleDbSource";
CManagedComponentWrapper wrp = md.Instantiate();
wrp.ProvideComponentProperties();

if (wrp.Validate() == DTSValidationStatus.VS_NEEDSNEWMETADATA)
{
    wrp.ReinitializeMetaData();
}
Dim p As Package = New Package 
Dim dataFlow As MainPipe = CType(CType(p.Executables.Add("SSIS.Pipeline.2"), TaskHost).InnerObject, MainPipe) 
Dim md As IDTSComponentMetaData100 = dataFlow.ComponentMetaDataCollection.New 
md.ComponentClassID = "DTSAdapter.OleDbSource" 
Dim wrp As CManagedComponentWrapper = md.Instantiate 
wrp.ProvideComponentProperties

If wrp.Validate = DTSValidationStatus.VS_NEEDSNEWMETADATA Then 
 wrp.ReinitializeMetaData 
End If