/// <summary> /// 根据一组Operation Key的定义产生一组ServiceOperation类 /// </summary> /// <param name="invokeWhenPersist">是否是持久化时调用</param> /// <param name="opKeys"></param> /// <returns></returns> public WfServiceOperationDefinitionCollection GetOperations(bool invokeWhenPersist, params string[] opKeys) { WfServiceOperationDefinitionCollection result = new WfServiceOperationDefinitionCollection(); if (opKeys != null) { foreach (string opKey in opKeys) { if (opKey.IsNotEmpty()) { string key = opKey.Trim(); if (key.IsNotEmpty()) { WfServiceOperationDefinitionConfigurationElement opElement = this.Operations[key]; if (opElement != null) { if (opElement.InvokeWhenPersist == invokeWhenPersist) { result.Add(new WfServiceOperationDefinition(opElement)); } } } } } } return(result); }
/// <summary> /// 得到在持久化之前需要调用的服务 /// </summary> /// <returns></returns> public WfServiceOperationDefinitionCollection GetServiceOperationsBeforePersist() { WfServiceOperationDefinitionCollection result = new WfServiceOperationDefinitionCollection(); foreach (WfServiceOperationDefinition serviceOpDef in this) { if (serviceOpDef.InvokeWhenPersist == false) { result.Add(serviceOpDef); } } return(result); }