Example #1
0
 /// <summary>
 /// Заполнить CollectionsTask
 /// </summary>
 private void PopulateCollectionsTask()
 {
     if (XDoc.Root.HasElements)
     {
         foreach (XElement itemTaskXElement in XDoc.Root.Elements("Task"))
         {
             // добавить задачу в коллекцию
             TaskApplication tempTask = this.Add(
                 itemTaskXElement.Attribute(COMMAND_NAME).Value,
                 itemTaskXElement.Attribute(COMMAND_DESCRIPTION).Value,
                 itemTaskXElement.Attribute(ATTR_PROCEDURE_NAME).Value,
                 itemTaskXElement.Attribute(ATTR_WHAT_MODULE).Value);
             if (tempTask != null)
             {
                 foreach (XElement itemParameterXElement in itemTaskXElement.Elements("Parameter"))
                 {
                     // добавить параметр для вызываемой процедуры
                     tempTask.Add(Convert.ToInt32(itemParameterXElement.Attribute(COMMAND_KEY).Value),
                                  itemParameterXElement.Attribute(COMMAND_VALUE).Value,
                                  ConvertStringToEnumTypeParam(itemParameterXElement.Attribute(COMMAND_TYPE).Value),
                                  itemParameterXElement.Attribute(COMMAND_DESCRIPTION).Value);
                 }
             }
         }
     }
 }
Example #2
0
            /// <summary>
            /// Глубокое клонирование
            /// </summary>
            /// <returns></returns>
            public virtual object Clone()
            {
                TaskApplication cloneTask = new TaskApplication(Name, Description, ProcedureName, WhatModule);

                foreach (Parameter itemParameter in this.Parameters.Values)
                {
                    cloneTask.Add(itemParameter.Number, itemParameter.Value, itemParameter.Type, itemParameter.Description);
                }

                return(cloneTask);
            }