Share via


WebServiceTask.DebugMode Propiedad

Definición

Obtiene o establece un valor booleano que indica si la tarea está en modo de depuración. Varios subprocesos pueden tener acceso al mismo tiempo a la propiedad DebugMode. Para garantizar la seguridad de los subprocesos y evitar problemas de simultaneidad, se usa la clase Interlocked de Microsoft .NET Framework.

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

Valor de propiedad

true si la tarea está en modo de depuración; de lo contrario, false.

Implementaciones

Ejemplos

En el ejemplo de código siguiente se crea un WebServiceTask, se muestra la configuración predeterminada de las propiedades, incluido DebugMode, mediante TaskHost. A continuación, establece dos campos para mostrar cómo establecer valores de campo.

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  

Salida del ejemplo:

Connection

DebugMode False

OutputLocation

OutputType 0

OverwriteWsdlFile False

ServiceName

SuspendRequired False

WebMethodInfo

WsdlFile

--------------------------

New value of OutputType and OverwriteWsdlFile: 0, True

Comentarios

La Interlocked clase proporciona operaciones atómicas para variables compartidas por varios subprocesos. Los subprocesos de distintos procesos pueden usar este mecanismo si la variable está en una memoria compartida. Para obtener más información, vea Interlocked y Interlocked Class en la biblioteca de clases de .NET Framework.

Se IsBreakpointTargetEnabled llama a la función cada vez que la tarea encuentra un punto de interrupción en su código. Dado que llamar a la función IsBreakpointTargetEnabled para ver si el destino del punto de interrupción está habilitado es costoso cuando se llama repetidamente, la DebugMode marca se usa para indicar si se va a depurar el ejecutable. Cuando esta marca se establece falseen , la tarea puede evitar la llamada para comprobar si hay un punto de interrupción habilitado. Un valor de true indica que la tarea debe comprobar los puntos de interrupción habilitados y es cuando se comprueba .IsBreakpointTargetEnabled

Se aplica a