public override XParameter ToXParam() { XParameter Param = base.ToXParam(); Param.SetValue( new XKey[] { new XKey( "EntryPoint", EntryPoint ) , new XKey( "Incoming", Incoming ) , new XKey( "FirstStopSkip", FirstStopSkip ) , new XKey( "DiscardUnmatched", DiscardUnmatched ) } ); int i = 0; XParameter NextParams = new XParameter( "NextIfs" ); foreach( ProcFind.RegItem R in NextIfs ) { XParameter RegParam = R.ToXParam(); RegParam.Id += i; RegParam.SetValue( new XKey( "i", i++ ) ); NextParams.SetParameter( RegParam ); } XParameter StopParams = new XParameter( "StopIfs" ); foreach( ProcFind.RegItem R in StopIfs ) { XParameter RegParam = R.ToXParam(); RegParam.Id += i; RegParam.SetValue( new XKey( "i", i++ ) ); StopParams.SetParameter( RegParam ); } Param.SetParameter( NextParams ); Param.SetParameter( StopParams ); return Param; }
private void AssignParamDefs( XParameter Param ) { int i = 0; foreach ( ParamDef P in ParamDefs ) { XParameter Def = P.ToXParam(); Def.Id += i; Def.SetValue( new XKey( "i", i++ ) ); Param.SetParameter( Def ); } }
public XParameter ToXParam( string ProcId = null ) { XParameter Param = new XParameter( "Procedures" ); Param.SetValue( new XKey[] { new XKey( "Async", Async ) , new XKey( "Guid", ProcId == null ? GUID : ProcId ) } ); int i = 0; foreach ( Procedure P in ProcList ) { XParameter ProcParam = P.ToXParam(); ProcParam.Id = "Proc" + ( i++ ); ProcParam.SetValue( new XKey( "ProcType", P.RawName ) ); Param.SetParameter( ProcParam ); } return Param; }