TrackingProfile Sınıf

Tanım

Dikkat

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

Bir izleme hizmetine bildirilmesi gereken kök iş akışı örneğinin olası yürütme yolundaki ilgi çekici noktaları tanımlar.

public ref class TrackingProfile
[System.Serializable]
public class TrackingProfile
[System.Serializable]
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public class TrackingProfile
[<System.Serializable>]
type TrackingProfile = class
[<System.Serializable>]
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type TrackingProfile = class
Public Class TrackingProfile
Devralma
TrackingProfile
Öznitelikler

Örnekler

Aşağıdaki kod örneği, oluşturucuyu kullanarak nasıl TrackingProfile oluşturabileceğinizi TrackingProfile ve bir iş akışının yürütülmesini izlemeye yardımcı olmak için nesnenin özelliklerini nasıl kullanabileceğinizi gösterir. Örnek kod , Versionve WorkflowTrackPoints özelliklerini kullanırActivityTrackPoints.

Bu kod örneği, Program.cs dosyasındaki SQLTrackingService SDK'sını kullanan sorgu örneğinin bir parçasıdır. Daha fazla bilgi için bkz. SQLTrackingService Kullanarak Sorgulama.

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

Açıklamalar

Not

Bu malzeme artık kullanılmayan türleri ve ad alanlarını açıklamaktadır. Daha fazla bilgi için bkz. Windows Workflow Foundation 4.5'te Kullanım Dışı Türler.

Çalışma süresi boyunca bir iş akışı örneği izleme olaylarını çalışma zamanı izleme altyapısına yayar. Çalışma zamanı izleme altyapısı, bu izleme olaylarını filtrelemek için kullanır TrackingProfile ve izleme hizmetine bu filtrelemeyi temel alan izleme kayıtlarını döndürür. Filtrelenebilen üç tür izleme olayı vardır: etkinlik durumu olayları, iş akışı durumu olayları ve kullanıcı olayları. Belirli etkinlik durumu olaylarını eşleştirmek için özelliğine nesneler, WorkflowTrackPoint belirli iş akışı durum olaylarını eşleştirmek için özelliğe nesneler WorkflowTrackPoints ve UserTrackPoint belirli kullanıcı olaylarıyla eşleşecek nesneler UserTrackPoints ekleyebilirsinizActivityTrackPoint.ActivityTrackPoints Bir izleme noktası eşleştirildiğinde, çalışma zamanı izleme altyapısı izleme olayıyla ilişkili verileri ilgili hizmetle ilişkili üzerinden TrackingChannel izleme hizmetine döndürür. Veriler, eşleşen izleme noktasının türüne bağlı olarak bir UserTrackingRecord , WorkflowTrackingRecordveya içinde döndürülürActivityTrackingRecord.

İzleme hizmeti, çalışma zamanı izleme altyapısının hizmetle TrackingProfile ilişkilendirilmiş ve belirli bir iş akışı örneğiyle veya belirli bir iş akışı türüyle ilişkili bir TrackingChannel istekte bulunma işlevselliğini sağlamak için soyut TrackingService sınıftaki yöntemleri uygular. Bir izleme hizmetinin çalışma zamanı izleme altyapısının izleme kayıtlarını gönderebileceği kanalı sağlamak için soyut TrackingChannel sınıfı da uygulaması gerekir.

İzleme hizmeti çalışma zamanına bir izleme profili nesnesi döndürdüğünde, iş akışı yürütülmeye başlar ve izleme profili seri hale getirilir. İzleme profilinin seri hale getirilmesi başarısız olursa, iş akışı örneğine bir özel durum oluşturulur. Özel durum işlenmezse iş akışı örneği sonlandırılır. İzleme profili, özelliğini kullanarak Schema çalışma zamanına geçirmeden önce doğrulanabilir.

, TrackingProfile XML'yi öğesine göre biçimlendiren kullanılarak TrackingProfileSerializerXML'ye Schemaseri hale getirilebilir. Bu, profil depolaması ve programlı olmayan bir şekilde profil yazmak için uygun bir biçim sağlar. Örneğin, SQL İzleme Hizmeti izleme profillerinin serileştirilmiş sürümlerini, sınıfını temel alarak SqlTrackingService oluşturduğunuz tüm izleme hizmetlerini depolar.

Oluşturucular

TrackingProfile()
Geçersiz.

öğesinin yeni bir örneğini TrackingProfilebaşlatır.

Özellikler

ActivityTrackPoints
Geçersiz.

Etkinlik durumu olaylarını filtrelemek için çalışma zamanı izleme altyapısı tarafından kullanılan etkinlik izleme noktalarının koleksiyonunu alır.

UserTrackPoints
Geçersiz.

Kullanıcı olaylarını filtrelemek için çalışma zamanı izleme altyapısı tarafından kullanılan kullanıcı izleme noktalarının koleksiyonunu alır.

Version
Geçersiz.

İzleme profilinin sürümünü alır veya ayarlar.

WorkflowTrackPoints
Geçersiz.

İş akışı durum olaylarını filtrelemek için çalışma zamanı izleme altyapısı tarafından kullanılan iş akışı izleme noktalarının koleksiyonunu alır.

Yöntemler

Equals(Object)
Geçersiz.

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()
Geçersiz.

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()
Geçersiz.

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()
Geçersiz.

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()
Geçersiz.

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.