LogProvider.SetExpression Method
SQL Server 2008 R2
Assigns the specified expression to the property. Specify null to remove an existing expression from the property.
Assembly: Microsoft.SqlServer.ManagedDTS (in Microsoft.SqlServer.ManagedDTS.dll)
Parameters
- propertyName
- Type: System.String
The name of the property to which to assign the expression.
- expression
- Type: System.String
The expression.
Implements
IDTSPropertiesProvider.SetExpression(String, String)The following example sets the Description property of the log provider to be the text, "This is the log for…" with the current month and day appended to the end of the string.
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); } } }
Sample output:
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