/// <summary>
 /// 由第一个节点开始创建流体
 /// </summary>
 /// <typeparam name="InFlowContext"></typeparam>
 /// <typeparam name="OutFlowContext"></typeparam>
 /// <typeparam name="NOutFlowContext"></typeparam>
 /// <param name="firstPipe"></param>
 /// <param name="nextPipe"></param>
 /// <returns></returns>
 public static EventFlowGenerator <InFlowContext, NOutFlowContext> AsFlowAndAdd <InFlowContext, OutFlowContext, NOutFlowContext>(this BaseSinglePipe <InFlowContext, OutFlowContext> firstPipe,
                                                                                                                                 BaseSinglePipe <OutFlowContext, NOutFlowContext> nextPipe)
     where InFlowContext : IPipeContext
     where OutFlowContext : IPipeContext
     where NOutFlowContext : IPipeContext
 {
     firstPipe.Append(nextPipe);
     return(new EventFlowGenerator <InFlowContext, NOutFlowContext>(firstPipe, nextPipe));
 }
 /// <summary>
 /// 由第一个节点开始创建流体
 /// </summary>
 /// <typeparam name="InFlowContext"></typeparam>
 /// <typeparam name="OutFlowContext"></typeparam>
 /// <param name="firstPipe"></param>
 /// <returns></returns>
 public static EventFlowGenerator <InFlowContext, OutFlowContext> Create <InFlowContext, OutFlowContext>(BaseSinglePipe <InFlowContext, OutFlowContext> firstPipe)
     where InFlowContext : IPipeContext
     where OutFlowContext : IPipeContext
 {
     return(new EventFlowGenerator <InFlowContext, OutFlowContext>(firstPipe));
 }