Share via


LogProvider.GetExpression(String) Metode

Definisi

Mengembalikan String yang berisi ekspresi untuk properti yang ditentukan. Null berarti tidak ada ekspresi yang ditetapkan.

public:
 virtual System::String ^ GetExpression(System::String ^ propertyName);
public string GetExpression (string propertyName);
abstract member GetExpression : string -> string
override this.GetExpression : string -> string
Public Function GetExpression (propertyName As String) As String

Parameter

propertyName
String

Nama properti yang ekspresinya ingin Anda lihat.

Mengembalikan

String yang berisi ekspresi yang digunakan untuk mengevaluasi properti .

Penerapan

Contoh

Contoh berikut mengatur properti Deskripsi penyedia log menjadi teks, "Ini adalah log untuk..." dengan bulan dan hari ini ditambahkan ke akhir string. Kemudian memvalidasi paket, yang menyelesaikan ekspresi dan menyimpan nilai ke properti yang ditentukan dalam propertyName. Ekspresi juga akan diatur pada ekspresi pada properti saat paket disimpan.

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  

Contoh output:

Deskripsi saat ini: Menulis entri log untuk peristiwa ke file CSV

Validasi lulus: Berhasil

Ekspresi untuk Deskripsi adalah "Ini adalah log untuk 06 Januari"

Deskripsinya sekarang: Ini adalah log untuk 06 Januari

Keterangan

propertyName akan menjadi ConfigString, Description, atau Name. Untuk penyedia log, saat ini adalah satu-satunya tiga properti yang dapat menggunakan ekspresi.

Berlaku untuk