Share via


ConnectionManager.GetExpression(String) Method

Definition

Returns a String that contains the expression for the specified property. Null means that no expression has been assigned.

public:
 virtual System::String ^ GetExpression(System::String ^ propertyName);
public string GetExpression (string propertyName);
abstract member GetExpression : string -> string
override this.GetExpression : string -> string
Public Function GetExpression (propertyName As String) As String

Parameters

propertyName
String

The name of the property whose expression you want to see.

Returns

A String that contains the expression used to evaluate the property.

Implements

Examples

The following code example sets an expression on a unique property of the connection manager, and then retrieves it after the package is validated.

using System;  
using System.Collections.Generic;  
using System.Text;  
using Microsoft.SqlServer.Dts.Runtime;  

namespace ConnMgr_Properties_Collection  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            // The package is one of the SSIS Samples.  
            string mySample = @"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Package Samples\CalculatedColumns Sample\CalculatedColumns\CalculatedColumns.dtsx";  

            // Create an application and load the sample.  
            Application app = new Application();  
            Package pkg = app.LoadPackage(mySample, null);  
            Connections myConns = pkg.Connections;  

            // Get the Properties collection from the connection manager.  
            ConnectionManager myConnMgr = myConns[0];  
            DtsProperties connProperties = myConnMgr.Properties;  

            // View information about the RetainSameConnection property   
            // before setting it using the SetExpression method.  
            Boolean hasProperty = connProperties.Contains("RetainSameConnection");  
            Console.WriteLine("has RetainSameConnection? {0}", hasProperty);  
            Object myValue = myConnMgr.Properties["RetainSameConnection"].GetValue(myConnMgr);  
            String mySValue = myValue.ToString();  
            Console.WriteLine("value before is {0}", mySValue);  
            String myTrueString = "true";  

            // Use SetExpression to set the value to true.  
myConnMgr.Properties["RetainSameConnection"].SetExpression(myConnMgr, myTrueString);  

            // Validate the package to set the expression on the property.  
            DTSExecResult valResult = pkg.Validate(myConns, null, null, null);  

            // Now that the value has been set, retrieve the value  
            // and the expression.  
            myValue = myConnMgr.Properties["RetainSameConnection"].GetValue(myConnMgr);  
            mySValue = myValue.ToString();  
            String myExpression = myConnMgr.Properties["RetainSameConnection"].GetExpression(myConnMgr);  
            String mySExpression = myExpression.ToString();  
            Console.WriteLine("value and expression is {0}, {1}", mySValue, mySExpression);   
        }  
    }  
}  
Imports System  
Imports System.Collections.Generic  
Imports System.Text  
Imports Microsoft.SqlServer.Dts.Runtime  

Namespace ConnMgr_Properties_Collection  
    Class Program  
        Shared  Sub Main(ByVal args() As String)  
        ' The package is one of the SSIS Samples.  
        Dim mySample As String = "C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Package Samples\CalculatedColumns Sample\CalculatedColumns\CalculatedColumns.dtsx"  

        ' Create an application and load the sample.  
        Dim app As New Application()  
        Dim pkg As Package = app.LoadPackage(mySample, Nothing)  
        Dim myConns As Connections = pkg.Connections  

        ' Get the Properties collection from the connection manager.  
        Dim myConnMgr As ConnectionManager = myConns(0)  
        Dim connProperties As DtsProperties = myConnMgr.Properties  

        ' View information about the RetainSameConnection property   
        ' before setting it using the SetExpression method.  
        Dim hasProperty As [Boolean] = connProperties.Contains("RetainSameConnection")  
        Console.WriteLine("has RetainSameConnection? {0}", hasProperty)  
        Dim myValue As [Object] = myConnMgr.Properties("RetainSameConnection").GetValue(myConnMgr)  
        Dim mySValue As String = myValue.ToString()  
        Console.WriteLine("value before is {0}", mySValue)  
        Dim myTrueString As String = "true"  

        ' Use SetExpression to set the value to true.  
myConnMgr.Properties("RetainSameConnection").SetExpression(myConnMgr, myTrueString)  

        ' Validate the package to set the expression on the property.  
        Dim valResult As DTSExecResult = pkg.Validate(myConns, Nothing, Nothing, Nothing)  

        ' Now that the value has been set, retrieve the value  
        ' and the expression.  
        myValue = myConnMgr.Properties("RetainSameConnection").GetValue(myConnMgr)  
        mySValue = myValue.ToString()  
        Dim myExpression As String = myConnMgr.Properties("RetainSameConnection").GetExpression(myConnMgr)  
        Dim mySExpression As String = myExpression.ToString()  
        Console.WriteLine("value and expression is {0}, {1}", mySValue, mySExpression)   
        End Sub  
    End Class  
End Namespace  

Sample Output:

has RetainSameConnection? True

value before is False

value and expression is True, true

Remarks

The propertyName can be a connection string, description, name, or protection level. For the connection manager, these are currently the only properties that support expressions.

Besides those common connection manager properties, each connection type has properties that are unique. These properties are listed by the Properties collection.

Applies to