2013-03-20 63 views

回答

0

您无法使用跟踪配置文件使用ActivityStateQuery过滤Activity类型。

ActivityName,Arguments,QueryAnnotations,States和Variables上的ActivityStateQuery过滤器。

您可以用代码过滤。例如使用TrackingParticipant来订阅ActivityStateRecord,然后过滤结果。 例如

class WorkflowTracking : TrackingParticipant 
{ 
    protected override void Track(TrackingRecord record, TimeSpan timeout) 
    { 
     ActivityStateRecord activityStateRecord = record as ActivityStateRecord; 

     if (activityStateRecord != null) 
     { 
      while(activityStateRecord.Activity.TypeName == "Main.Workflows.Components.DummyItem") 
      { 
      using (StreamWriter writer = File.AppendText(@"c:\temp\tracking.txt")) 
      { 
       writer.WriteLine(activityStateRecord.ToString()); 
       writer.WriteLine(); 
       writer.Close(); 
      } 
      } 
     } 
    } 
}