Package.SetExpression(String, String) Method

Definition

Assigns the specified expression to the property. Specify null to remove an existing expression from the property.

public:
 virtual void SetExpression(System::String ^ propertyName, System::String ^ expression);
public void SetExpression (string propertyName, string expression);
abstract member SetExpression : string * string -> unit
override this.SetExpression : string * string -> unit
Public Sub SetExpression (propertyName As String, expression As String)

Parameters

propertyName
String

The name of the property to assign the expression to.

expression
String

The expression.

Implements

Examples

The following code example modifies the value of the DelayValidation property using SetExpression, then displays the new value using GetExpression.

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

namespace Microsoft.SqlServer.SSIS.Samples  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            Package pkg = new Package();  
            // Set an expression on one of the properties.  
            DtsProperties pkgProperties = pkg.Properties;  

            // View information about the DelayValidation property   
            // before setting it with the SetExpression method.  
            Object myValue = pkgProperties["DelayValidation"].GetValue(pkg);  
            String mySValue = myValue.ToString();  
            Console.WriteLine("value before is {0}", mySValue);   

            // Use SetExpression to set the value to true.  
            String myTrueString = "true";  
            pkgProperties["DelayValidation"].SetExpression(pkg, myTrueString);  

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

            // Verify the new setting.  
            myValue = pkgProperties["DelayValidation"].GetValue(pkg);  
            mySValue = myValue.ToString();  

            String myExpression = pkg.Properties["DelayValidation"].GetExpression(pkg);  
            String mySExpression = myExpression.ToString();  
            Console.WriteLine("The value and expression is {0}, {1}", mySValue, mySExpression);  
        }  
    }  
}  
Imports System  
Imports System.Collections.Generic  
Imports System.Text  
Imports Microsoft.SqlServer.Dts.Runtime  

Class Program  
    Shared Sub Main(ByVal args() As String)   
        Dim pkg As New Package()  
        ' Set an expression on one of the properties.  
        Dim pkgProperties As DtsProperties = pkg.Properties  

        ' View information about the DelayValidation property   
        ' before setting it with the SetExpression method.  
        Dim myValue As [Object] = pkgProperties("DelayValidation").GetValue(pkg)  
        Dim mySValue As String = myValue.ToString()  
        Console.WriteLine("value before is {0}", mySValue)  

        ' Use SetExpression to set the value to true.  
        Dim myTrueString As String = "true"  
        pkgProperties("DelayValidation").SetExpression(pkg, myTrueString)  

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

        ' Verify the new setting.  
        myValue = pkgProperties("DelayValidation").GetValue(pkg)  
        mySValue = myValue.ToString()  

        Dim myExpression As String = pkg.Properties("DelayValidation").GetExpression(pkg)  
        Dim mySExpression As String = myExpression.ToString()  
        Console.WriteLine("The value and expression is {0}, {1}", mySValue, mySExpression)  
    End Sub  
End Class  

Sample Output:

value before is False

The value and expression is True, true

Remarks

The propertyName can be any property available on the object.

Applies to