我想在我的項目中實現一個調度程序。我的目標是實施ETL過程。 這意味着在每天結束的時候我都想從我的數據庫中讀取數據,然後創建一個XML文件並將其上傳到某個遠程系統。 對於實施,我完成了除計劃之外的所有過程。C#Job Scheduler
如果有人知道請幫我下面的事情。
- 添加一個新類來處理調度
- 如何使用定時器在C#創建調度(如何添加和使用)
- 如何調用該計時器在指定的時間十一時四十五分(23.45 )
請提供一些示例代碼
在此先感謝...
我想在我的項目中實現一個調度程序。我的目標是實施ETL過程。 這意味着在每天結束的時候我都想從我的數據庫中讀取數據,然後創建一個XML文件並將其上傳到某個遠程系統。 對於實施,我完成了除計劃之外的所有過程。C#Job Scheduler
如果有人知道請幫我下面的事情。
請提供一些示例代碼
在此先感謝...
由於你想每天運行它,並且因爲你沒有認爲程序需要一直運行(例如,通過WCF服務與應用程序進行通信),我建議你讓你的應用程序從Windows調度器啓動。
@ downvoter:謹慎評論你爲什麼downvoted? – citronas
我在控制檯應用程序中嘗試了一些簡單的作業調度。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Quartz;
using Quartz.Impl;
using Quartz.Job;
using System.Windows;
namespace WindowsTrainingTasks
{
public partial class Schedulerexample : Window
{
public Schedulerexample()
{
InitializeComponent();
ISchedulerFactory schedFact = new StdSchedulerFactory();
IScheduler quartzScheduler = schedFact.GetScheduler();
IJobDetail job = JobBuilder.Create<HelloJob>()
.WithIdentity("HelloJob", "group1")
.Build();
ITrigger trigger = TriggerBuilder.Create()
.WithIdentity("DAMMetadataSyncTrigger")
.StartNow()
.WithSimpleSchedule(x => x
.WithIntervalInSeconds(5)
.RepeatForever())
.Build();
quartzScheduler.ScheduleJob(job, trigger);
quartzScheduler.Start();
}
}
public class HelloJob : IJob
{
public void Execute(IJobExecutionContext context)
{
MessageBox.Show("Xenovex Technologies", "Xenovex5");
}
}
}
過於寬泛或只是要求源代碼的通常問題不是很好的問題。幸運的是[如何改進](http://stackoverflow.com/questions/how-to-ask)。 –
爲什麼不在數據庫管理系統中使用內置的數據導出功能?我確信所有的DBMS都有這種通過工作建立起來的東西。 –