XMLTask.OperationType Property


Gets or sets a DTSXMLOperation enumeration value that indicates the type of the operation that the task performs, such as validation or merging.

Namespace:   Microsoft.SqlServer.Dts.Tasks.XMLTask
Assembly:  Microsoft.SqlServer.XMLTask (in Microsoft.SqlServer.XMLTask.dll)

public DTSXMLOperation OperationType { get; set; }

Property Value

Type: Microsoft.SqlServer.Dts.Tasks.XMLTask.DTSXMLOperation

A value from the DTSXMLOperation enumeration that indicates the type of the operation that the task performs.

The following code example adds an XMLTask to a package, and sets properties using the TaskHost.

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

namespace XMLTask_API
    class Program
        static void Main(string[] args)
                // Set up the objects and tasks.
                Package pkg = new Package();
                Executable exec1 = pkg.Executables.Add("STOCK:XMLTask");
                TaskHost th = exec1 as TaskHost;
                // You can cast the InnerObject to the XmlTask here.
                // XMLTask myTask = th.InnerObject as XMLTask;

                // Create a variable and a FILE connection manager to books.xml.
                Variable resultVar = pkg.Variables.Add("resultVariable", false, "", "Variable for the result");
                ConnectionManager connMgr = pkg.Connections.Add("FILE");
                connMgr.Name = "XMLConnectionManager";
                // The file, Books.xml, is stored on the C:\ drive.
                connMgr.ConnectionString = @"c:\books.xml";

                // Set the XMLTask properties.
                // The first property to set is the OperationType. Depending on the
                // OperationType, different properties are valid.
                // The operation type in this example is VALIDATE.
                th.Properties["OperationType"].SetValue(th, DTSXMLOperation.Validate);
                th.Properties["SourceType"].SetValue(th, DTSXMLSourceType.FileConnection);
                th.Properties["Source"].SetValue(th, connMgr.Name);
                th.Properties["OverwriteDestination"].SetValue(th, true);
                th.Properties["SaveOperationResult"].SetValue(th, true);
                th.Properties["DestinationType"].SetValue(th, DTSXMLSaveResultTo.Variable);
                th.Properties["Destination"].SetValue(th, resultVar.Name);
                th.Properties["SecondOperandType"].SetValue(th, DTSXMLSourceType.DirectInput);
                th.Properties["SecondOperand"].SetValue(th, "<x></x>");
                th.Properties["ValidationType"].SetValue(th, DTSXMLValidationType.DTD);
                th.Properties["FailOnValidationFaile"].SetValue(th, true);
                DTSExecResult valResults = pkg.Validate(pkg.Connections, pkg.Variables, null, null);
                Console.WriteLine("RESULTS: {0}", valResults);

Sample Output:

RESULTS: Success

Return to top