直接贴代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Timers;
using Qyn.Studio.Extend;
using Cms.Entity.Common;
using Cms.Logic.Common;
using System.IO;
using System.Threading;
namespace CmsCs
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine(string.Format("服务已启动....更新频率:{0} 分钟;更新文章:{1} 篇;",SystemConfigs.ConfigInfo.Interval,SystemConfigs.ConfigInfo.DataSize));

            while (true)
            {
                Thread.Sleep(SystemConfigs.ConfigInfo.Interval * 1000 * 60);  //多长时间执行一次
                TimedEvent();
            }
        }
        //执行操作
        private static void TimedEvent()
        {
            //按时间间隔发布产品
            var IDs = TopicLogic.Data.Where(t => t.IsPublish == false && t.AuditType == TopicInfo.EumAuditType.Success).Asc(t => t.CreateAt).Selector(t => t.ID).ToList(SystemConfigs.ConfigInfo.DataSize).Select(t => t.ID.GetValueOrDefault()).ToList();
            foreach (var item in IDs)
            {
                TopicLogic.Data.Where(t => t.ID == item).Update(new TopicInfo() { IsPublish = true });
            }
            Console.WriteLine(string.Format("{0}:发布文章共{1}篇 :{2}", DateTime.Now.ToLongString(), IDs.Count, IDs.ToString(",")));
            SaveLog(IDs);
        }

        //日志记录
        private static void SaveLog(List<int> IDs)
        {
            var path = @"F:\\CmsCsLog\\";
            if (!Directory.Exists(path))
                Directory.CreateDirectory(path);

            var txtlog = @"F:\\CmsCsLog\\" + DateTime.Now.ToShortString() + "_Log.txt";

            StreamWriter generateTxt = new StreamWriter(txtlog, true);
            generateTxt.WriteLine(string.Format("{0}:发布文章共{1}篇 :{2}", DateTime.Now.ToString("HH:mm"), IDs.Count, IDs.ToString(",")));
            generateTxt.Close();
            generateTxt.Dispose();
        }
    }
}


仅留下来做记录,供以后查看

如有问题,请留言···