LogProvider.GetExpression(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает строку, содержащую выражение для указанного свойства. Значение NULL означает, что выражение не назначено.
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
Параметры
- propertyName
- String
Имя свойства, выражение которого необходимо просмотреть.
Возвращаемое значение
Строка, содержащая выражение, используемое для вычисления свойства.
Реализации
Примеры
В следующем примере свойство Description поставщика журнала задается как текст "Это журнал для..." с текущим месяцем и днем, добавленными к концу строки. Затем он проверяет пакет, который разрешает выражение и сохраняет значение в свойстве, указанном в propertyName
. Выражение также будет задано для выражений свойства при сохранении пакета.
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
Пример выходных данных:
Текущее описание: записывает записи журнала для событий в CSV-файл
Проверка пройдена: успешно
Выражение для описания — "Это журнал за январь 06 года".
Описание теперь: это журнал за январь 06 г.
Комментарии
Будет propertyName
использоваться ConfigString, Description или Name. В настоящее время для поставщика журналов это только три свойства, которые могут использовать выражение.