DTSXMLSourceType Enumerazione

Definizione

Descrive la posizione del SourceType, il tipo sorgente della stringa XPath in XPathStringSourceType, e il tipo del secondo operando in SecondOperandType. A seconda del tipo utilizzato, le Sourceproprietà , XPathStringSource, e SecondOperand devono essere compatibili. Ad esempio, se il SourceType è impostato su FileConnection, allora deve Source contenere un gestore di connessioni. Se il SourceType è Variable, allora deve Source puntare alla variabile da usare.

public enum class DTSXMLSourceType
public enum DTSXMLSourceType
type DTSXMLSourceType = 
Public Enum DTSXMLSourceType
Ereditarietà
DTSXMLSourceType

Campi

Nome Valore Descrizione
FileConnection 0

Specifica che il documento XML è salvato in un file. Il compito interagisce con il connection manager per recuperare i documenti XML dai file. Se stai scrivendo un'interfaccia utente per questo compito, le operazioni che supportano il recupero del file connection manager dovrebbero anche offrire un pulsante Nuova connessione, che permette agli utenti di creare una nuova connessione durante la modifica del compito.

Variable 1

Specifica che il documento XML è salvato in una variabile.

DirectInput 2

Specifica che il documento XML venga inserito in testo semplice, direttamente in un'area dell'interfaccia utente del compito. Questa opzione viene utilizzata solo quando è fornita un'interfaccia utente per il compito.

Esempio

Il seguente esempio di codice mostra questa enumerazione usata per impostare e SourceTypeSecondOperandType per il compito.

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

Output di esempio:

RISULTATI: Successo

Si applica a