Вы можете использовать WorkflowInspectionServices для отображения действий из корневого действия. При использовании WorkflowInspectionServices идентификаторы устанавливаются.
С такой рекурсивной функцией:
void WriteActivities(Activity p_activity, int p_offset)
{
Console.WriteLine("{2}Activity : {0}, {3} ({1})", p_activity.Id, p_activity.GetType().Name, new String('-', p_offset), p_activity.DisplayName);
IEnumerable<Activity> l_activities = WorkflowInspectionServices.GetActivities(p_activity);
foreach (Activity l_childActivity in l_activities)
{
WriteActivities(l_childActivity, p_offset + 1);
}
}