Udostępnij za pośrednictwem


Metoda LogProvider.SetExpression

Przypisuje określone wyrażenie właściwość.Określ nullodwołanie o wartości null (Nothing w języku Visual Basic) usunąć istniejące wyrażenie z właściwość.

Przestrzeń nazw:  Microsoft.SqlServer.Dts.Runtime
Zestaw:  Microsoft.SqlServer.ManagedDTS (w Microsoft.SqlServer.ManagedDTS.dll)

Składnia

'Deklaracja
Public Sub SetExpression ( _
    propertyName As String, _
    expression As String _
)
'Użycie
Dim instance As LogProvider
Dim propertyName As String
Dim expression As String

instance.SetExpression(propertyName, _
    expression)
public void SetExpression(
    string propertyName,
    string expression
)
public:
virtual void SetExpression(
    String^ propertyName, 
    String^ expression
) sealed
abstract SetExpression : 
        propertyName:string * 
        expression:string -> unit 
override SetExpression : 
        propertyName:string * 
        expression:string -> unit 
public final function SetExpression(
    propertyName : String, 
    expression : String
)

Parametry

  • propertyName
    Typ: System.String
    Nazwa właściwość, do których chcesz przypisać wyrażenie.

Implementacje

IDTSPropertiesProvider.SetExpression(String, String)

Uwagi

propertyName Będzie Ciąg_konfiguracji, opis lub nazwę.Dostawca dziennika te są obecnie tylko trzy właściwości, które można użyć wyrażenie.

Przykłady

Poniższy przykład ustawia właściwość opis dostawca dziennika się tekst, "to jest dla… dziennika" bieżący miesiąc i dzień na końcu ciąg.

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

namespace LogProvider_Expression_Tests
{
    class Program
    {
        static void Main(string[] args)
        {
            // The package is one of the SSIS Samples. The package was
            // modified to log to the SSIS log provider for Text files
            // and saved before loading into this code.

            string mySample = @"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Package Samples\ExecuteProcess Sample\ExecuteProcess\UsingExecuteProcess.dtsx";

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

            // Get the LogProviders collection.
            LogProviders logProvs = pkg.LogProviders;

            // Get the "SSIS log provider for Text files"
            // provider from the collection.
            LogProvider textLogProv = logProvs["SSIS log provider for Text files"];

            //Display the current description of this provider.
            String currDescription = textLogProv.Description;
            Console.WriteLine("Current description: {0}", currDescription);

            // Set an expression. Only a few properties
            // are available to have expressions. For Log Providers, 
            //current only the properties of ConfigString, Description,
            // and Name take expressions.
            DateTime dt = DateTime.Now;
            String nowMonth = dt.ToString("m");
            String newDesc = "\"This is the log for " + nowMonth + "\"";
            textLogProv.SetExpression("Description", newDesc);

            // Validate the package to set the expression
            // onto the property.
            Connections pkgConns = pkg.Connections;          
            DTSExecResult valResult = pkg.Validate(pkgConns, null, null, null);
            if (valResult != DTSExecResult.Failure)
            {
                Console.WriteLine("Validation passed: {0}", valResult);
            }
            else
                Console.WriteLine("Validation FAILED: {0}", valResult);

            // Retrieve the log provider collections.
            logProvs = pkg.LogProviders;

            // Retreive the text log provider from the collection.
            textLogProv = logProvs["SSIS log provider for Text files"];

            // Check the expression, and verify that the name changed.
            String logProvExpr = textLogProv.GetExpression("Description");
            Console.WriteLine("The expression for Description is {0}", logProvExpr);
            String newDescAfter = textLogProv.Description;
            Console.WriteLine("The description is now: {0}", newDescAfter);
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime

Namespace LogProvider_Expression_Tests
    Class Program
        Shared Sub Main(ByVal args() As String)
            ' The package is one of the SSIS Samples. The package was
            ' modified to log to the SSIS log provider for Text files
            ' and saved before loading into this code.
            Dim mySample As String = "C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services\Package Samples\ExecuteProcess Sample\ExecuteProcess\UsingExecuteProcess.dtsx"

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

            ' Get the LogProviders collection.
            Dim logProvs As LogProviders = pkg.LogProviders

            ' Get the "SSIS log provider for Text files"
            ' provider from the collection.
            Dim textLogProv As LogProvider = logProvs("SSIS log provider for Text files")

            'Display the current description of this provider.
            Dim currDescription As String = textLogProv.Description
            Console.WriteLine("Current description: {0}", currDescription)

            ' Set an expression. Only a few properties
            ' are available to have expressions. For Log Providers, 
            'current only the properties of ConfigString, Description,
            ' and Name take expressions.
            Dim dt As DateTime = DateTime.Now
            Dim nowMonth As String = dt.ToString("m")
            Dim newDesc As String = """This is the log for " + nowMonth + """"
            textLogProv.SetExpression("Description", newDesc)

            ' Validate the package to set the expression
            ' onto the property.
            Dim pkgConns As Connections = pkg.Connections
            Dim valResult As DTSExecResult = pkg.Validate(pkgConns, Nothing, Nothing, Nothing)
            If valResult <> DTSExecResult.Failure Then
                Console.WriteLine("Validation passed: {0}", valResult)
            Else
                Console.WriteLine("Validation FAILED: {0}", valResult)
            End If
            ' Retrieve the log provider collections.
            logProvs = pkg.LogProviders

            ' Retreive the text log provider from the collection.
            textLogProv = logProvs("SSIS log provider for Text files")

            ' Check the expression, and verify that the name changed.
            Dim logProvExpr As String = textLogProv.GetExpression("Description")
            Console.WriteLine("The expression for Description is {0}", logProvExpr)
            Dim newDescAfter As String = textLogProv.Description
            Console.WriteLine("The description is now: {0}", newDescAfter)
        End Sub
    End Class
End Namespace

Przykład danych wyjściowych:

Current description: Writes log entries for events to a CSV file

Validation passed: Success

The expression for Description is "This is the log for January 06"

The description is now: This is the log for January 06