Поделиться через


Variables.Item Property

Returns a Variable object from the Variables collection.

Пространство имен: Microsoft.SqlServer.Dts.Runtime
Сборка: Microsoft.SqlServer.ManagedDTS (in microsoft.sqlserver.manageddts.dll)

Синтаксис

'Декларация
Public ReadOnly Default Property Item ( _
    index As Object _
) As Variable
public Variable this [
    Object index
] { get; }
public:
property Variable^ default [Object^] {
    Variable^ get (Object^ index);
}
/** @property */
public Variable get_Item (Object index)

Параметры

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

Значение свойства

A Variable object.

Замечания

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\90\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());
                 }
            }
            Console.WriteLine("---------------------------");
            // 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);
                }

            myEnum.Reset();
            Console.WriteLine("---------------------------");

            //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);
            //}
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Namespace Adding_Variables
    Class Program
        Shared  Sub Main(ByVal args() As String)
            Dim app As Application =  New Application() 
            ' Load a sample package that contains a variable that sets the file name.
            Dim pkg As Package =  app.LoadPackage("C:\Program Files\Microsoft SQL Server\90\Samples\Integration Services\Package Samples\CalculatedColumns Sample\CalculatedColumns\CalculatedColumns.dtsx",Nothing) 
            Dim pkgVars As Variables =  pkg.Variables 
            Dim myVar As Variable =  pkg.Variables.Add("myCustomVar",False,"User","3") 
 
            ' Verify whether the variable is in the collection now.
            Dim hasMyVar As Boolean =  pkg.Variables.Contains("myCustomVar") 
            Console.WriteLine("The variable was found? {0}", hasMyVar)
 
            ' Loop over the collection using the foreach keyword.
            Dim pkgVar As Variable
            For Each pkgVar In pkgVars
                ' Print variables only from the User namespace.
                If pkgVar.Namespace = "User" Then
                Console.WriteLine("Variable: {0}, {1}", pkgVar.Name, pkgVar.Value.ToString())
                End If
            Next
            Console.WriteLine("---------------------------")
            ' Loop over the collection using the Enumerator. 
            Dim myEnum As VariableEnumerator =  pkg.Variables.GetEnumerator() 
            Dim i As Integer =  0 
            While (myEnum.MoveNext()) &&(myEnum.Current <> Nothing)
                    Console.WriteLine("[{0}] {1}, {2}",i = Console.WriteLine("[{0}] {1}, {2}",i + 1
            End While
 
            myEnum.Reset()
            Console.WriteLine("---------------------------")
 
            '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)
            Dim nameOfFirstItem As String =  pkgVars(0).Name 
            Console.WriteLine("The name of the first variable is: {0}", nameOfFirstItem)
            '}
        End Sub
    End Class
End Namespace

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

Синхронизация потоков

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.

Платформы

Платформы разработки

Список поддерживаемых платформ см. в разделе Hardware and Software Requirements for Installing SQL Server 2005.

Целевые платформы

Список поддерживаемых платформ см. в разделе Hardware and Software Requirements for Installing SQL Server 2005.

См. также

Справочник

Variables Class
Variables Members
Microsoft.SqlServer.Dts.Runtime Namespace