Export (0) Print
Expand All

DTSXMLSourceType Enumeration

Describes the location of the SourceType, the source type of the XPath string in XPathStringSourceType, and the type of the second operand in SecondOperandType. Depending on what the type is used, the Source, XPathStringSource, and SecondOperand properties must be compatible. For example, if the SourceType is set to FileConnection, then the Source must contain a connection manager. If the SourceType is Variable, then the Source must point to the variable to use.

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

public enum DTSXMLSourceType

Member nameDescription
DirectInputSpecifies that the XML document is entered in plain text, directly into an area in the task user interface. This option is used only when a user interface for the task is provided.
FileConnectionSpecifies that the XML document is saved in a file. The task interacts with the connection manager to retrieve XML documents from the files. If you are writing a user interface for this task, operations that support file connection manager retrieval should also offer a New connection button, which allows users to create a new connection while editing the task.
VariableSpecifies that the XML document is saved in a variable.

If you are writing a user interface for this task, you should present the user with a list of current variables and allow the user to pick one as the source. Operations that support the use of variables should also offer a New variable button, which allows users to create a new variable while editing the task.

The following code example shows this enumeration being used to set the SourceType and SecondOperandType for the task.

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,
                        // but it is advised that you work with tasks
                        // through the TaskHost and its Properties.
                        // 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 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

Community Additions

ADD
Show:
© 2014 Microsoft