WebServiceTask.DebugMode Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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 false
en , 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