Compartir a través de


TrackingProfileSerializer Clase

Definición

Precaución

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

Proporciona métodos para serializar y deserializar perfiles de seguimiento en y desde documentos XML con la definición del esquema XML (XSD) del perfil de seguimiento.

public ref class TrackingProfileSerializer
public class TrackingProfileSerializer
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public class TrackingProfileSerializer
type TrackingProfileSerializer = class
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type TrackingProfileSerializer = class
Public Class TrackingProfileSerializer
Herencia
TrackingProfileSerializer
Atributos

Ejemplos

En el siguiente ejemplo de código se muestra la forma de crear TrackingProfileSerializer con el constructor TrackingProfileSerializer a fin de serializar un TrackingProfile. El código también usa el método Serialize.

Este ejemplo de código pertenece a la consulta generada con el ejemplo del SDK de SQLTrackingService del archivo Program.cs. Para obtener más información, vea Consulta mediante SQLTrackingService.

private static void CreateAndInsertTrackingProfile()
{
    TrackingProfile profile = new TrackingProfile();
    ActivityTrackPoint activityTrack = new ActivityTrackPoint();
    ActivityTrackingLocation activityLocation = new ActivityTrackingLocation(typeof(Activity));
    activityLocation.MatchDerivedTypes = true;
    IEnumerable<ActivityExecutionStatus> statuses = Enum.GetValues(typeof(ActivityExecutionStatus)) as IEnumerable<ActivityExecutionStatus>;
    foreach (ActivityExecutionStatus status in statuses)
    {
        activityLocation.ExecutionStatusEvents.Add(status);
    }

    activityTrack.MatchingLocations.Add(activityLocation);
    profile.ActivityTrackPoints.Add(activityTrack);
    profile.Version = version;

    WorkflowTrackPoint workflowTrack = new WorkflowTrackPoint();
    WorkflowTrackingLocation workflowLocation = new WorkflowTrackingLocation();
    IEnumerable<TrackingWorkflowEvent> eventStatuses = Enum.GetValues(typeof(TrackingWorkflowEvent)) as IEnumerable<TrackingWorkflowEvent>;
    foreach (TrackingWorkflowEvent status in eventStatuses)
    {
        workflowLocation.Events.Add(status);
    }

    workflowTrack.MatchingLocation = workflowLocation;
    profile.WorkflowTrackPoints.Add(workflowTrack);

    TrackingProfileSerializer serializer = new TrackingProfileSerializer();
    StringWriter writer = new StringWriter(new StringBuilder(), CultureInfo.InvariantCulture);
    serializer.Serialize(writer, profile);
    string trackingprofile = writer.ToString();
    InsertTrackingProfile(trackingprofile);
}
Shared Sub CreateAndInsertTrackingProfile()
    Dim profile As TrackingProfile = New TrackingProfile()

    Dim activityTrack As ActivityTrackPoint = New ActivityTrackPoint()
    Dim activityLocation As ActivityTrackingLocation = New ActivityTrackingLocation(GetType(Activity))
    activityLocation.MatchDerivedTypes = True
    Dim statuses As IEnumerable(Of ActivityExecutionStatus) = CType(System.Enum.GetValues(GetType(ActivityExecutionStatus)), IEnumerable(Of ActivityExecutionStatus))
    For Each status As ActivityExecutionStatus In statuses
        activityLocation.ExecutionStatusEvents.Add(status)
    Next

    activityTrack.MatchingLocations.Add(activityLocation)
    profile.ActivityTrackPoints.Add(activityTrack)
    profile.Version = version

    Dim workflowTrack As WorkflowTrackPoint = New WorkflowTrackPoint()
    Dim workflowLocation As WorkflowTrackingLocation = New WorkflowTrackingLocation()
    Dim eventStatuses As IEnumerable(Of TrackingWorkflowEvent) = CType(System.Enum.GetValues(GetType(TrackingWorkflowEvent)), IEnumerable(Of TrackingWorkflowEvent))
    For Each status As TrackingWorkflowEvent In eventStatuses
        workflowLocation.Events.Add(status)
    Next

    workflowTrack.MatchingLocation = workflowLocation
    profile.WorkflowTrackPoints.Add(workflowTrack)

    Dim serializer As TrackingProfileSerializer = New TrackingProfileSerializer()
    Dim writer As StringWriter = New StringWriter(New StringBuilder(), CultureInfo.InvariantCulture)
    serializer.Serialize(writer, profile)
    Dim trackingProfile As String = writer.ToString()
    InsertTrackingProfile(trackingProfile)
End Sub

Comentarios

Nota

En esta documentación se describen los tipos y espacios de nombres que están obsoletos. Para obtener más información, vea Tipos en desuso en Windows Workflow Foundation 4.5.

TrackingProfileSerializer usa la XSD de perfil de seguimiento incluida en TrackingProfileSerializer.Schema para serializar objetos TrackingProfile en documentos XML válidos y deserializar documentos XML válidos en objetos TrackingProfile. TrackingProfileSerializer realiza la validación durante la serialización y la deserialización y, si es necesario, inicia una excepción adecuada.

Un documento XML proporciona un formato conveniente en el que almacenar un perfil de seguimiento. También proporciona una manera de crear perfiles de seguimiento sin usar programación. El SqlTrackingService original utiliza TrackingProfileSerializer para serializar y deserializar los perfiles de seguimiento almacenados en su base de datos.

Constructores

TrackingProfileSerializer()
Obsoletos.

Inicializa una nueva instancia de la clase TrackingProfileSerializer.

Propiedades

Schema
Obsoletos.

Obtiene la definición del esquema XML (XSD) del perfil de seguimiento.

Métodos

Deserialize(TextReader)
Obsoletos.

Deserializa el documento XML incluido en el lector de texto con la definición del esquema XML (XSD) del perfil de seguimiento.

Equals(Object)
Obsoletos.

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()
Obsoletos.

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()
Obsoletos.

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()
Obsoletos.

Crea una copia superficial del Object actual.

(Heredado de Object)
Serialize(TextWriter, TrackingProfile)
Obsoletos.

Serializa el perfil de seguimiento en un documento XML con la definición del esquema XML (XSD) del perfil de seguimiento.

ToString()
Obsoletos.

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Consulte también