WebServiceTask.DebugMode プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
タスクがデバッグ モードかどうかを示すブール型 (Boolean) の値を取得または設定します。 DebugMode プロパティには、複数のスレッドが同時にアクセスできます。 スレッド セーフを確保し、コンカレンシーの問題を回避するために、Microsoft .NET Frameworkの Interlocked クラスが使用されます。
public:
property bool DebugMode { bool get(); void set(bool value); };
public bool DebugMode { get; set; }
member this.DebugMode : bool with get, set
Public Property DebugMode As Boolean
プロパティ値
タスクがデバッグ モードの場合は true。それ以外の場合は false。
実装
例
次のコード例では、を使用して、プロパティDebugModeの既定の設定を示す 、を作成WebServiceTaskしますTaskHost。 次に、フィールド値を設定する方法を示す 2 つのフィールドを設定します。
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Tasks.WebServiceTask;
namespace Microsoft.SqlServer.SSIS.Samples
{
class Program
{
static void Main(string[] args)
{
Package pkg = new Package();
Executable exec1 = pkg.Executables.Add("STOCK:WebServiceTask");
TaskHost th = exec1 as TaskHost;
// List the default values of the Web Service task
// using the Properties collection of the TaskHost.
Console.WriteLine("Connection {0}", th.Properties["Connection"].GetValue(th));
Console.WriteLine("DebugMode {0}", th.Properties["DebugMode"].GetValue(th));
Console.WriteLine("OutputLocation {0}", th.Properties["OutputLocation"].GetValue(th));
Console.WriteLine("OutputType {0}", th.Properties["OutputType"].GetValue(th));
Console.WriteLine("OverwriteWsdlFile {0}", th.Properties["OverwriteWsdlFile"].GetValue(th));
Console.WriteLine("ServiceName {0}", th.Properties["ServiceName"].GetValue(th));
Console.WriteLine("SuspendRequired {0}", th.Properties["SuspendRequired"].GetValue(th));
Console.WriteLine("WebMethodInfo {0}", th.Properties["WebMethodInfo"].GetValue(th));
Console.WriteLine("WsdlFile {0}", th.Properties["WsdlFile"].GetValue(th));
Console.WriteLine("--------------------------");
// Show how to set a property using the TaskHost Properties.
th.Properties["OutputType"].SetValue(th, DTSOutputType.File);
th.Properties["OverwriteWsdlFile"].SetValue(th, true);
Console.WriteLine("New value of OutputType and OverwriteWsdlFile: {0}, {1}", th.Properties["OutputType"].GetValue(th), th.Properties["OverwriteWsdlFile"].GetValue(th));
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Tasks.WebServiceTask
Namespace Microsoft.SqlServer.SSIS.Samples
Class Program
Shared Sub Main(ByVal args() As String)
Dim pkg As Package = New Package()
Dim exec1 As Executable = pkg.Executables.Add("STOCK:WebServiceTask")
Dim th As TaskHost = exec1 as TaskHost
' List the default values of the Web Service task
' using the Properties collection of the TaskHost.
Console.WriteLine("Connection {0}", th.Properties("Connection").GetValue(th))
Console.WriteLine("DebugMode {0}", th.Properties("DebugMode").GetValue(th))
Console.WriteLine("OutputLocation {0}", th.Properties("OutputLocation").GetValue(th))
Console.WriteLine("OutputType {0}", th.Properties("OutputType").GetValue(th))
Console.WriteLine("OverwriteWsdlFile {0}", th.Properties("OverwriteWsdlFile").GetValue(th))
Console.WriteLine("ServiceName {0}", th.Properties("ServiceName").GetValue(th))
Console.WriteLine("SuspendRequired {0}", th.Properties("SuspendRequired").GetValue(th))
Console.WriteLine("WebMethodInfo {0}", th.Properties("WebMethodInfo").GetValue(th))
Console.WriteLine("WsdlFile {0}", th.Properties("WsdlFile").GetValue(th))
Console.WriteLine("--------------------------")
' Show how to set a property using the TaskHost Properties.
th.Properties("OutputType").SetValue(th, DTSOutputType.File)
th.Properties("OverwriteWsdlFile").SetValue(th, True)
Console.WriteLine("New value of OutputType and OverwriteWsdlFile: {0}, {1}", th.Properties("OutputType").GetValue(th), th.Properties("OverwriteWsdlFile").GetValue(th))
End Sub
End Class
End Namespace
サンプル出力:
Connection
DebugMode False
OutputLocation
OutputType 0
OverwriteWsdlFile False
ServiceName
SuspendRequired False
WebMethodInfo
WsdlFile
--------------------------
New value of OutputType and OverwriteWsdlFile: 0, True
注釈
Interlocked
クラスは、複数のスレッドで共有される変数にアトミックな操作を提供します。 変数が共有メモリ内にある場合、異なるプロセスのスレッドはこのメカニズムを使用できます。 詳細については、.NET Framework クラス ライブラリの「Interlocked
」と「Interlocked Class
」を参照してください。
IsBreakpointTargetEnabled 関数は、タスクがコード内のブレークポイントに到達するたびに呼び出されます。 ブレークポイント ターゲットが有効になっているかどうかを確認するために関数 IsBreakpointTargetEnabled を呼び出すと、繰り返し呼び出されるとコストがかかるため、 DebugMode フラグは実行可能ファイルがデバッグされるかどうかを示すために使用されます。 このフラグを false
に設定すると、タスクはブレークポイントが有効かどうかを確認する呼び出しを行いません。 値が true
の場合、タスクが有効なブレークポイントを確認する必要があることを示し、その場合は IsBreakpointTargetEnabled が確認されます。