Поделиться через


DTSXMLSourceType Перечисление

Определение

Описывает местоположение SourceType, исходного типа строки XPath в XPathStringSourceType, а также типа второго операнда в SecondOperandType. В зависимости от используемого типа свойства Source, XPathStringSource и SecondOperand должны быть совместимы. Например, если значение SourceType задано в FileConnection, то Source должен содержать диспетчер соединений. Если для SourceType задано значение Variable, то Source должен указывать на используемую переменную.

public enum class DTSXMLSourceType
public enum DTSXMLSourceType
type DTSXMLSourceType = 
Public Enum DTSXMLSourceType
Наследование
DTSXMLSourceType

Поля

Имя Значение Описание
DirectInput 2

Указывает, что XML-документ вводится в формате простого текста, напрямую в области в пользовательском интерфейсе задачи. Этот параметр используется только при наличии пользовательского интерфейса задачи.

FileConnection 0

Указывает на сохранение XML-документа в файле. Задача взаимодействует с диспетчером соединений для извлечения XML-документов из файлов. При написании пользовательского интерфейса для этой задачи операции, поддерживающие извлечение диспетчера соединений файлов также должны обеспечивать кнопку Создать соединение, позволяющую пользователям создавать новое соединение во время редактирования задачи.

Variable 1

Указывает на сохранение XML-документа в переменной.

Примеры

В следующем примере кода показано, что это перечисление используется для задания SourceType задачи и SecondOperandType ее выполнения.

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);  
                }  
        }  
}  

Образец вывода:

РЕЗУЛЬТАТЫ: успех

Применяется к