Condividi tramite


DTSXMLOperation Enumerazione

Definizione

Specifica le operazioni che vengono eseguite quando si utilizzano documenti XML.

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

Campi

Diff 4

Consente di confrontare due documenti XML. Il documento XML di origine utilizzato come documento di base consente all'operazione Diff di eseguirne il confronto con un altro documento XML e di scrivere quindi le differenze in un documento DiffGram in formato XML. Questa operazione include proprietà per la personalizzazione del confronto.

Merge 3

Consente di unire due documenti XML. Il documento XML di origine utilizzato come documento di base consente di unire un secondo documento al documento di base. L'operazione può specificare una posizione di unione nel documento di base.

Patch 5

Applica l'output dell'operazione Diff (un documento DiffGram) a un documento XML per creare un nuovo documento padre che può includere il contenuto del documento DiffGram.

Validate 0

Convalida il documento XML rispetto a una definizione DTD (Document Type Definition) o a una definizione di XML Schema (XSD).

XPATH 2

Consente di eseguire valutazioni e query XPath.

XSLT 1

Consente di eseguire trasformazioni XSL in documenti XML.

Esempio

Nell'esempio di codice seguente viene illustrata questa enumerazione utilizzata per impostare subito OperationType dopo la creazione dell'attività.

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

Esempio di output

RISULTATI: Operazione riuscita

Commenti

Questa operazione determina quali altre proprietà della XMLTask classe sono valide. Ad esempio, se l'operazione scelta è XPATH, vengono usate le proprietà PutResultInOneNode e XPathOperation . Quando l'operazione è Validate, FailOnValidationFail il flag è disponibile. Si tratta in genere del primo set di proprietà nel codice, quindi è possibile visualizzare immediatamente l'attività XMLTask eseguita da .

Si applica a