ConnectionManager.SetExpression(String, String) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将指定的表达式赋予该属性。 指定 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
表达式。
实现
示例
以下代码示例展示了如何使用表达式设置连接管理器特有属性的值。 连接管理器独有的属性包含在集合 Properties 中。
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 onto the property.
DTSExecResult valResult = pkg.Validate(myConns, null, null, null);
// Now that the value has been set, retrieve it.
myValue = myConnMgr.Properties["RetainSameConnection"].GetValue(myConnMgr);
mySValue = myValue.ToString();
Console.WriteLine("value after is {0}", mySValue);
}
}
}
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 onto the property.
Dim valResult As DTSExecResult = pkg.Validate(myConns, Nothing, Nothing, Nothing)
' Now that the value has been set, retrieve it.
myValue = myConnMgr.Properties("RetainSameConnection").GetValue(myConnMgr)
mySValue = myValue.ToString()
Console.WriteLine("value after is {0}", mySValue)
End Sub
End Class
End Namespace
示例输出:
RetainSameConnection(保持同连接)吗? 是
值 之前 是 False
值 之后 为真
注解
连接管理器对象可以propertyName是连接字符串、描述、名称或保护级别。 对于连接管理器来说,目前只有这些属性支持表达式。 除了这些常见的连接管理器属性外,每种连接类型还有独特的属性。 这些房产按馆藏列出 Properties 。 你可以用该 SetExpression 方法提供属性名称作为 String 参数设置。 如果你想通过集合 Properties 设置连接唯一的属性,了解该属性集合继承自 DtsProperty可能会有用。 注意 SetExpression ,继承的参数 DtsProperty 第一个参数是 , Object 而不是 String。