XMLTask.Validate メソッド

定義

コンポーネントが正しく設定されているかを確認します。

public:
 override Microsoft::SqlServer::Dts::Runtime::DTSExecResult Validate(Microsoft::SqlServer::Dts::Runtime::Connections ^ connections, Microsoft::SqlServer::Dts::Runtime::VariableDispenser ^ variableDispenser, Microsoft::SqlServer::Dts::Runtime::IDTSComponentEvents ^ events, Microsoft::SqlServer::Dts::Runtime::IDTSLogging ^ log);
public override Microsoft.SqlServer.Dts.Runtime.DTSExecResult Validate(Microsoft.SqlServer.Dts.Runtime.Connections connections, Microsoft.SqlServer.Dts.Runtime.VariableDispenser variableDispenser, Microsoft.SqlServer.Dts.Runtime.IDTSComponentEvents events, Microsoft.SqlServer.Dts.Runtime.IDTSLogging log);
override this.Validate : Microsoft.SqlServer.Dts.Runtime.Connections * Microsoft.SqlServer.Dts.Runtime.VariableDispenser * Microsoft.SqlServer.Dts.Runtime.IDTSComponentEvents * Microsoft.SqlServer.Dts.Runtime.IDTSLogging -> Microsoft.SqlServer.Dts.Runtime.DTSExecResult
Public Overrides Function Validate (connections As Connections, variableDispenser As VariableDispenser, events As IDTSComponentEvents, log As IDTSLogging) As DTSExecResult

パラメーター

connections
Connections

タスクで使用されるいくつかの Connections の集合体です。

variableDispenser
VariableDispenser

変数をロックするための VariableDispenser オブジェクトです。

events
IDTSComponentEvents

IDTSComponentEvents インターフェイスを実装するオブジェクト。

log
IDTSLogging

IDTSLogging インターフェイスを実装するオブジェクト。

返品

DTSExecResult列挙体の値。

以下のコード例は、パッケージの一部として XMLTask を作成します。 タスクが作成された後、いくつかのプロパティを設定し、PackageValidateメソッドを呼び出します。

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;  
            XMLTask myTask = th.InnerObject as XMLTask;  

            // Create a FILE connection manager to books.xml.  
            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.  
            myTask.OperationType = DTSXMLOperation.Validate;  
            myTask.SourceType = DTSXMLSourceType.FileConnection;  
            myTask.Source = connMgr.Name;  

            DTSExecResult valResults = pkg.Validate(pkg.Connections, pkg.Variables, null, null);  
            Console.WriteLine("RESULTS: {0}", valResults);  
        }  
    }  
}  

サンプル出力:

RESULTS: Success

注釈

この方法はOperationType値に関係なくXMLTaskが利用できます。

Validateメソッドは、プロパティや設定の不正確さや誤った設定をレビューします。 この手法はデータに触れず、接続を検証するためにデータソースに接続しません。 しかし、必要なフィールドが入力され、適切な数値が含まれていることが保証されます。 検証されるフィールドは、検証対象のオブジェクトによって異なります。

Validateの主な用途はカスタムタスクを書く際です。 Validateメソッドは、タスクが設計面にドロップされた際にSSISデザイナーによって呼び出され、プロパティ設定時に複数回呼び出されることがあります。 しかし、コード上では個々のオブジェクトに対するValidateメソッドはあまり使われず、オブジェクトの検証が必要な場合はValidate上でPackageメソッドを呼び出すことが推奨されています。 ただし、必要に応じて個別の物体でこの方法が利用可能です。

Validateメソッドはカスタムタスクで上書きされ、SSISデザイナーでオブジェクトの検証やコード呼び出時に上書きされます。 カスタムタスクの Validate メソッドの作成についての詳細は、「 カスタムタスクのコーディング」をご覧ください。

適用対象