Variable.DataType Property
Returns a TypeCode enumeration that describes the data type of the variable. This property is read-only.
Assembly: Microsoft.SqlServer.ManagedDTS (in Microsoft.SqlServer.ManagedDTS.dll)
The following example creates a package, adds a ForEachLoop, and adds a variable to the Variables collection of the ForEachLoop. It then retrieves and sets properties on the variable and displays them for viewing, including the DataType.
static void Main(string[] args) { Package p = new Package(); // Add a sequence to the package executables collection Sequence seq = (Sequence)p.Executables.Add("STOCK:SEQUENCE"); // Add a ForEachLoop to the Sequence ForEachLoop feLoop = (ForEachLoop)seq.Executables.Add("STOCK:FOREACHLOOP"); // Add a variable, v, to the variable collection // of the ForEach loop. Variable v = feLoop.Variables.Add("v", false, "global", 100); // Get and set different variable properties // Creation Name (read-only) String createName = v.CreationName; // Description (read/write) v.Description = "my new v Description"; String vDesc = v.Description; // ID (read-only) String vID = v.ID; // Name (read/write) String oldName = v.Name; v.Name = "my_new_V_name"; String newName = v.Name; // Namespace (read/write) String oldNamespace = v.Namespace; v.Namespace = "my_new_v_Namespace"; String newNamespace = v.Namespace; // Properties (read-only) int pmCount = v.Properties.Count; // Qualified Name (read-only) String QName = v.QualifiedName; // RaiseChangedEvent (read/write) Boolean oldraiseChEvt = v.RaiseChangedEvent; v.RaiseChangedEvent = true; Boolean raiseChangedEvent = v.RaiseChangedEvent; // Read-only (read/write) Boolean vReadOnly = v.ReadOnly; v.ReadOnly = true; Boolean newVReadOnly = v.ReadOnly; // System Variable (read-only) Boolean sysVar = v.SystemVariable; // Type (read-only) TypeCode type = v.DataType; // Value (read/write) Object vValue = v.Value; Console.WriteLine("The variable properties are: "); Console.WriteLine("Creation Name = {0}", createName); Console.WriteLine("Description = {0}", vDesc); Console.WriteLine("ID = {0}", vID); Console.WriteLine("Old name, new name = {0}, {1}", oldName, newName); Console.WriteLine("Old namespace, new namespace = {0}, {1}", oldNamespace, newNamespace); Console.WriteLine("Properties count = {0}", pmCount); Console.WriteLine("Qualified Name = {0}", QName); Console.WriteLine("old RaiseEvent, new RaiseEvent = {0}, {1}", oldraiseChEvt, raiseChangedEvent); Console.WriteLine("old read-only, new read-only = {0}, {1}", vReadOnly, newVReadOnly); Console.WriteLine("System Variable = {0}", sysVar); Console.WriteLine("Type = {0}", type); }
Sample Output:
The variable properties are:
Creation Name =
Description = my new v Description
ID = {622CF328-55D7-4E81-9385-9C1F8450511E}
Old name, new name = v, my_new_V_name
Old namespace, new namespace = global, my_new_v_Namespace
Properties count = 12
Qualified Name = my_new_v_Namespace::my_new_V_name
old RaiseEvent, new RaiseEvent = False, True
old read-only, new read-only = False, True
System Variable = False
Type = Int32