示例#1
0
 protected void FillEntityNodesByJoin(JoinType join, EntityNode fromEntityNode, ArgumentNode toArgumentNode, Entity contextEntity)
 {
     toArgumentNode.filled = true;
     Collections.Enumerator <Entity> enumerator = Collections.GetEnumerator <Entity>(join.GetEntities(Flow.Current.NodeCollector, toArgumentNode.argument.NodeDescription, fromEntityNode.entity));
     while (enumerator.MoveNext())
     {
         EntityNode node;
         Entity     current = enumerator.Current;
         if (((contextEntity == null) || contextEntity.Equals(current)) && toArgumentNode.TryGetEntityNode(current, out node))
         {
             node.nextArgumentEntityNodes.Add(fromEntityNode);
             toArgumentNode.entityNodes.Add(node);
         }
     }
 }
示例#2
0
 private void FillEntityNodesByJoin(JoinType join, ICollection <Entity> contextEntities, EntityNode fromEntityNode, ArgumentNode toArgumentNode)
 {
     Collections.Enumerator <Entity> enumerator = Collections.GetEnumerator <Entity>(join.GetEntities(Flow.Current.NodeCollector, toArgumentNode.argument.NodeDescription, fromEntityNode.entity));
     while (enumerator.MoveNext())
     {
         EntityNode node;
         Entity     current = enumerator.Current;
         if (!this.FilterByContext(toArgumentNode.argument, current, contextEntities) && toArgumentNode.TryGetEntityNode(current, out node))
         {
             toArgumentNode.entityNodes.Add(node);
             fromEntityNode.nextArgumentEntityNodes.Add(node);
         }
     }
 }