Beispiel #1
0
 public virtual void DictDeserialize(IDictionary <string, object> docu, Scenario scenario = Scenario.Database)
 {
     ProcessToDo.DictDeserialize(docu, scenario);
     Name        = docu.Set("Name", Name);
     Description = docu.Set("Description", Description);
     ScriptPath  = docu.Set("ScriptPath", ScriptPath);
 }
Beispiel #2
0
        public virtual FreeDocument DictSerialize(Scenario scenario = Scenario.Database)
        {
            var docu = ProcessToDo.DictSerialize(scenario);

            docu.SetValue("Name", Name);
            docu.SetValue("Description", Description);
            docu.SetValue("ScriptPath", ScriptPath);
            return(docu);
        }
Beispiel #3
0
        public virtual IDataProcess Load(bool addui)
        {
            IDataProcess process = ProcessManager.GetTask(this.TaskType, this.Name);

            if (process != null)
            {
                return(process);
            }
            ControlExtended.SafeInvoke(() =>
            {
                process = ProcessManager.GetOneInstance(this.TaskType, newOne: true, addUI: addui);
                ProcessToDo.DictCopyTo(process as IDictionarySerializable);
                process.Init();
                EvalScript();
            }, LogType.Important, string.Format(GlobalHelper.Get("key_327"), Name), MainDescription.IsUIForm);
            return(process);
        }
Beispiel #4
0
 public virtual void Load(bool addui)
 {
     if (
         (ProcessManager.CurrentProcessCollections.FirstOrDefault(d => d.Name == this.Name) == null).SafeCheck("不能重复加载该任务") ==
         false)
     {
         return;
     }
     ControlExtended.SafeInvoke(() =>
     {
         var processname = ProcessToDo["Type"].ToString();
         if (string.IsNullOrEmpty(processname))
         {
             return;
         }
         var process = ProcessManager.GetOneInstance(processname, newOne: true, addUI: addui);
         ProcessToDo.DictCopyTo(process as IDictionarySerializable);
         process.Init();
         EvalScript();
     }, LogType.Important, $"加载{Name}任务", true);
 }