Esempio n. 1
0
        private void Visit(ActivityDO activity, Action <ActivityDO> callback)
        {
            callback(activity);

            foreach (var child in activity.ChildNodes.OfType <ActivityDO>().ToArray())
            {
                Visit(child, callback);
            }
        }
Esempio n. 2
0
        private void Compare(ActivityDO reference, ActivityDO actual, Action <ActivityDO, ActivityDO> callback)
        {
            callback(reference, actual);

            if (reference.ChildNodes.Count != actual.ChildNodes.Count)
            {
                throw new Exception("Unable to compare nodes with different number of children.");
            }

            for (int i = 0; i < reference.ChildNodes.Count; i++)
            {
                Compare((ActivityDO)reference.ChildNodes[i], (ActivityDO)actual.ChildNodes[i], callback);
            }
        }