ConnectionManager.SetExpression(String, String) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Atribui a expressão especificada à propriedade. Especifique nulo para remover uma expressão existente da propriedade.
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)
Parâmetros
- propertyName
- String
O nome da propriedade à qual atribuir a expressão.
- expression
- String
A expressão.
Implementações
Exemplos
O exemplo de código a seguir mostra como usar uma expressão para definir o valor de uma propriedade específica para um gerenciador de conexões. As propriedades exclusivas para o gerenciador de conexões estão contidas na Properties coleção.
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
Saída de exemplo:
tem RetainSameConnection? True
valor antes é False
valor depois é True
Comentários
O propertyName
objeto do gerenciador de conexões pode ser uma cadeia de conexão, uma descrição, um nome ou um nível de proteção. Para o gerenciador de conexões, essas são atualmente as únicas propriedades que dão suporte a expressões. Além dessas propriedades comuns do gerenciador de conexões, cada tipo de conexão tem propriedades exclusivas. Essas propriedades são listadas pela Properties coleção. Você pode usar o SetExpression método para fornecer o nome da propriedade para definir como um String
parâmetro. Se você quiser definir propriedades exclusivas para a conexão usando a Properties coleção, talvez seja útil saber que essa coleção de propriedades herda de DtsProperty. Observe que o SetExpression herdado usa DtsProperty um Object
como o primeiro parâmetro, não um String
.