Variables.Item Property (Object)


Returns a Variable object from the Variables collection.

Namespace:   Microsoft.SqlServer.Dts.Runtime
Assembly:  Microsoft.SqlServer.ManagedDTS (in Microsoft.SqlServer.ManagedDTS.dll)

public Variable this[
	object index
] { get; }


Type: System.Object

The name, ID, description, or index of the Variable object to return.

If the call to the Contains method returns true, you can access the specified element in the collection by using the syntax Variables[index]. If the Contains method returns false, this property throws an exception. In C#, this property is the indexer for the Variables class.

The following code example adds a variable to the package. The code example uses various methods to locate the variable and print its name, value, and namespace.

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
namespace Adding_Variables
    class Program
        static void Main(string[] args)
            Application app = new Application();
            // Load a sample package that contains a variable that sets the file name.
            Package pkg = app.LoadPackage(@"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Package Samples\CalculatedColumns Sample\CalculatedColumns\CalculatedColumns.dtsx", null);
            Variables pkgVars = pkg.Variables;
            Variable myVar = pkg.Variables.Add("myCustomVar", false, "User", "3");

            // Verify whether the variable is in the collection now.
            Boolean hasMyVar = pkg.Variables.Contains("myCustomVar");
            Console.WriteLine("The variable was found? {0}", hasMyVar);

            // Loop over the collection using the foreach keyword.
            foreach (Variable pkgVar in pkgVars)
                // Print variables only from the User namespace.
                if (pkgVar.Namespace == "User")
                Console.WriteLine("Variable: {0}, {1}", pkgVar.Name, pkgVar.Value.ToString());
            // Loop over the collection using the Enumerator. 
            VariableEnumerator myEnum = pkg.Variables.GetEnumerator();
            int i = 0;
            while ((myEnum.MoveNext()) && (myEnum.Current != null))
                // Again, show only the variables in the User namespace.
                if (myEnum.Current.Namespace == "User")
                    Console.WriteLine("[{0}] {1}, {2}", i++, myEnum.Current.Name, myEnum.Current.Namespace);


            //Using the Item method syntax of [x], obtain the
            // first entry in the collection.
            myVar = pkgVars[0];
            Console.WriteLine("The name and namespace of the first variable is: {0}, {1}", myVar.Name, myVar.Namespace);
            String nameOfFirstItem = pkgVars[0].Name;
            Console.WriteLine("The name of the first variable is: {0}", nameOfFirstItem);

Sample Output:

The variable was found? True

Variable: myCustomVar, 3


[0] myCustomVar, User


The name and namespace of the first variable is: CancelEvent, System

The name of the first variable is: CancelEvent

Return to top