2014-01-21 48 views
0

我在asp.net 中創建了一個網站web表單,我需要一個可執行的計時器應用程序,它可以與我的網站一起運行並檢查數據庫中的數據並製作一些功能 您是否有任何想法如何使 或任何例子請與網站一起運行的可執行應用程序

感謝

+1

我假設服務器在你的控制之下?如果是這樣,最簡單的方法就是創建一個控制檯應用程序,並讓任務調度程序根據您期望的時間表運行它。 –

+0

不,我現在使用visual studio,我想要的是一個運行alonside我的網站的應用程序,它會檢查數據庫中的數據,並使一些函數accordinly,一些告訴使用存儲過程,但會存儲過程執行所需的功能 – user1784696

回答

0

您可以輕鬆創建Visual Studio中一個控制檯應用程序,請參見here。否則,你可以創建一個service application,它可以獲得由Windows服務管理的訪問權限和狀態。使用控制檯應用程序,最簡單的方法是在windows task scheduler之內運行。使用基於服務的應用程序,您可以在應用程序中簡單地設置一個計時器,每隔幾分鐘就可以觸發一次您的數據庫所需的邏輯/檢查。

0

我有與任務調度程序相同的設計。你可以通過以下控制器動作運行你的exe文件:

public ActionResult Index() 
    { 
     Process[] processlist = Process.GetProcessesByName("Scheduler"); 
     if (processlist.Length > 0) 
     { 
      ViewData["isProcessWorking"] = "true"; 
     } 
     else 
     { 
      ViewData["isProcessWorking"] = "false"; 
     } 
     return View(); 
    } 

    [HttpPost] 
    public JsonResult Restart() 
    { 
     Process[] processlist = Process.GetProcessesByName("Scheduler"); 
     foreach (var item in processlist) 
     { 
      item.CloseMainWindow(); 
     } 

     string str = Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory + "TaskScheduler\\Scheduler.exe").ToString(); 
     Process deneme = Process.Start(str); 
     return new JsonResult(); 
    } 

    [HttpPost] 
    public JsonResult Stop() 
    { 
     Process[] processlist = Process.GetProcessesByName("Scheduler"); 
     foreach (var item in processlist) 
     { 
      item.CloseMainWindow(); 
     } 
     return new JsonResult(); 
    } 
相關問題