다음을 통해 공유


TrackingProfileSerializer 클래스

정의

주의

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

추적 프로필 XSD(XML 스키마 정의)를 사용하여 추적 프로필을 XML 문서로/XML 문서에서 직렬화 및 역직렬화하는 메서드를 제공합니다.

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
상속
TrackingProfileSerializer
특성

예제

다음 코드 예제에서는 TrackingProfileSerializer 생성자를 사용하여 TrackingProfileSerializer을 serialize하는 TrackingProfile를 만드는 방법을 보여 줍니다. 또한 이 코드에서는 Serialize 메서드를 사용합니다.

이 코드 예제는 Program.cs 파일에 있는 Query using SQLTrackingService SDK 샘플의 일부입니다. 자세한 내용은 쿼리를 사용 하 여 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

설명

참고

이 자료에서는 더 이상 사용되지 않는 형식과 네임스페이스에 대해 설명합니다. 자세한 내용은 Deprecated Types in Windows Workflow Foundation 4.5(Windows Workflow Foundation 4.5에서 사용되지 않는 형식)를 참조하세요.

TrackingProfileSerializerTrackingProfileSerializer.Schema에 포함된 추적 프로필 XSD를 사용하여 TrackingProfile 개체를 올바른 XML 문서로 serialize하고 올바른 XML 문서를 TrackingProfile 개체로 역직렬화합니다. TrackingProfileSerializer는 serialization 및 deserialization 중에 모두 유효성 검사를 수행하고, 필요한 경우 해당 예외를 throw합니다.

XML 문서는 추적 프로필을 저장할 편리한 형식을 제공합니다. 또한 추적 프로필을 작성하는 비프로그래밍 방법을 제공합니다. 기본 SqlTrackingServiceTrackingProfileSerializer를 사용하여 데이터베이스에 저장된 추적 프로필을 직렬화 및 역직렬화합니다.

생성자

TrackingProfileSerializer()
사용되지 않음.

TrackingProfileSerializer 클래스의 새 인스턴스를 초기화합니다.

속성

Schema
사용되지 않음.

추적 프로필 XSD(XML 스키마 정의)를 가져옵니다.

메서드

Deserialize(TextReader)
사용되지 않음.

추적 프로필 XSD(XML 스키마 정의)를 사용하여 텍스트 판독기에 포함된 XML 문서를 역직렬화합니다.

Equals(Object)
사용되지 않음.

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()
사용되지 않음.

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()
사용되지 않음.

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()
사용되지 않음.

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
Serialize(TextWriter, TrackingProfile)
사용되지 않음.

추적 프로필 XSD(XML 스키마 정의)를 사용하여 추적 프로필을 XML 문서로 serialize합니다.

ToString()
사용되지 않음.

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

적용 대상

추가 정보