private static bool CanAutoSendUserTask(IWfActivity activity) { bool result = activity.Descriptor.Properties.GetValue("AutoSendUserTask", true); WfAutoSendUserTaskMode autoSendMode = activity.Descriptor.Properties.GetValue("AutoSendUserTaskMode", WfAutoSendUserTaskMode.ByDefault); switch (autoSendMode) { case WfAutoSendUserTaskMode.ByDefault: //当从数据库中加载流程时,LoadingType为DataLoadingType.External。 //result = result || // activity.Process.LoadingType == DataLoadingType.External || // activity.Process.EntryInfo != null; result = result || activity.Process.Committed; break; case WfAutoSendUserTaskMode.ByAutoSendUserTaskProperty: //在不是Clone活动的情况下和AutoSendUserTask相同,否则返回true if (activity.Descriptor.ClonedKey.IsNotEmpty()) { result = true; } break; } return(result); }
public static WfClientAutoSendUserTaskMode ToClientAutoSendUserTaskMode(this WfAutoSendUserTaskMode sendTaskMode) { return((WfClientAutoSendUserTaskMode)sendTaskMode); }