次の方法で共有


DTSXMLOperation 列挙体

XML ドキュメントに関する作業を行うときに使用する操作を指定します。

名前空間:  Microsoft.SqlServer.Dts.Tasks.XMLTask
アセンブリ:  Microsoft.SqlServer.XMLTask (Microsoft.SqlServer.XMLTask.dll)

構文

'宣言
Public Enumeration DTSXMLOperation
'使用
Dim instance As DTSXMLOperation
public enum DTSXMLOperation
public enum class DTSXMLOperation
type DTSXMLOperation
public enum DTSXMLOperation

メンバー

メンバー名 説明
Validate 文書型定義 (DTD) または XML スキーマ定義 (XSD) に対して XML ドキュメントを検証します。
XSLT XML ドキュメントに対して XSL 変換を実行します。
XPATH XPath クエリと評価を実行します。
Merge 2 つの XML ドキュメントをマージします。ソース XML ドキュメントを基本ドキュメントとして使用することで、第 2 のドキュメントを基本ドキュメントにマージします。この操作では、ドキュメント内でのマージ場所を指定できます。
Diff 2 つの XML ドキュメントを比較します。ソース XML ドキュメントを基本ドキュメントとして使用することで、DIFF 操作は、基本ドキュメントを他の XML ドキュメントと比較し、相違を検出して、XML DiffGram ドキュメントに相違点を書き込みます。この操作には、比較をカスタマイズするためのプロパティが含まれています。
Patch DIFF 操作からの出力 (DiffGram ドキュメント) を XML ドキュメントに適用して、DiffGram ドキュメントの内容を含むことのできる新しい親ドキュメントを作成します。

説明

この操作により、XMLTask クラスの他のプロパティで有効なものが決まります。たとえば、操作として XPATH を選択すると、プロパティ PutResultInOneNodeXPathOperation が使用されます。操作が Validate の場合は、FailOnValidationFail フラグが有効になります。通常、コードではこのプロパティを最初に設定し、XMLTask が実行しているタスクがすぐにわかるようにします。

使用例

次のコード例では、この列挙を使用して、タスクを作成した直後に OperationType を設定しています。

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

サンプルの出力 :

RESULTS: Success