/// <summary>
 /// 手动执行task
 /// </summary>
 /// <param name="item"></param>
 private static void ExcuteJobManaul(SystemTaskOfDailyExcutorEntity item)
 {
     DateTime scheduledTime = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, item.ExcuteHour, item.ExcuteMinute, 0);
     if (DateTime.Now > scheduledTime)
     {
         IJob job = TypeHelper.Activate<IJob>(item.Type);
         if (job != null)
         {
             job.Execute(null);
         }
     }
 }
Beispiel #2
0
        /// <summary>
        /// 手动执行task
        /// </summary>
        /// <param name="item"></param>
        private static void ExcuteJobManaul(SystemTaskOfDailyExcutorEntity item)
        {
            DateTime scheduledTime = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, item.ExcuteHour, item.ExcuteMinute, 0);

            if (DateTime.Now > scheduledTime)
            {
                IJob job = TypeHelper.Activate <IJob>(item.Type);
                if (job != null)
                {
                    job.Execute(null);
                }
            }
        }
        /// <summary>
        /// 获取config节点,创建配置信息实体
        /// </summary>
        /// <param name="parent"></param>
        /// <param name="configContext"></param>
        /// <param name="section"></param>
        /// <returns></returns>
        public object Create(object parent, object configContext, XmlNode section)
        {
            SystemTaskSectionConfig sectionConfig = new SystemTaskSectionConfig();
            foreach (XmlNode taskTypeNode in section.ChildNodes)
            {
                switch (taskTypeNode.Name.ToLower())
                {
                    case "dailytasks":
                        {
                            foreach (XmlNode taskNode in taskTypeNode.ChildNodes)
                            {
                                if (taskNode.NodeType == XmlNodeType.Comment)
                                {
                                    continue;
                                }

                                SystemTaskOfDailyExcutorEntity entity = new SystemTaskOfDailyExcutorEntity();
                                entity.Addon = XmlHelper.GetNodeValue(taskNode, string.Empty, "addon");
                                entity.Name = XmlHelper.GetNodeValue(taskNode, string.Empty, "name");
                                entity.IsUse = XmlHelper.GetNodeValue<bool>(taskNode, string.Empty, "isUse", true);
                                entity.ExcuteHour = XmlHelper.GetNodeValue(taskNode, string.Empty, "excuteHour", Config.GetAppSetting("taskExcuteHour", 0));
                                entity.ExcuteMinute = XmlHelper.GetNodeValue(taskNode, string.Empty, "excuteMinute", Config.GetAppSetting("taskExcuteMinute", 0));
                                string typeString = XmlHelper.GetNodeValue(taskNode, string.Empty, "type");
                                if (string.IsNullOrEmpty(typeString) == false)
                                {
                                    entity.Type = Type.GetType(typeString, true);
                                }

                                sectionConfig.SystemTaskOfDailyExcutorList.Add(entity);
                            }
                        }
                        break;
                    default:
                        //TODO:xieran20120926 需要添加其他各种任务执行周期类型(每小时,每周,每月等)
                        break;
                }
            }

            return sectionConfig;
        }