Package.SetExpression(String, String) 方法

定义

将指定的表达式分配给属性。 指定 null 以从属性中删除现有表达式。

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)

参数

propertyName
String

向其分配表达式的属性的名称。

expression
String

表达式。

实现

示例

下面的代码示例使用SetExpression修改属性的值DelayValidation,然后使用它显示新值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  

示例输出:

value before is False

The value and expression is True, true

注解

可以是 propertyName 对象上可用的任何属性。

适用于