0

我有一個用C#開發的Web應用程序,它從數據庫中檢索數據並將檢索結果寫入文件。我需要做的是能夠定期在我的服務器(微軟服務器)上運行這個網絡應用程序,每天說一次更新數據。我認爲使用schedular將是這樣做的方式,但我不知道如何讓它運行我的web應用程序,即我的.sln文件。我看了下面的帖子,提出了一些建議: Running a web app automatically 但需要多一點指導。在微軟服務器上運行C#web應用程序和調度器

回答

3

你可以寫一個控制檯應用程序將發送一個HTTP請求到Web應用程序:

class Program 
{ 
    static void Main() 
    { 
     using (var client = new WebClient()) 
     { 
      var result = client.DownloadString("http://example.com/test.aspx"); 
      File.WriteAllText("foo.txt", result); 
     } 
    } 
} 

,然後配置Windows調度運行,在給定的時間這個控制檯應用程序。

+0

嗨,感謝您的回覆。我有一個方法writeToFile()寫入不同格式的數據,有沒有辦法說var result = client.DownloadString(writeToFile()); –

+0

@John D,當然,讓我更新我的答案。完成。 –

+0

感謝您的快速響應。要更清楚一點。我有一堆讀取和寫入到我的writeToFile()方法中執行的文件。主要執行該方法的方法是什麼,以便我可以在調度中使用它。 –

0

使用Windows計劃任務。如果您需要在Web上下文中運行,請讓計劃任務檢索一個URL,以啓動處理。

0

Here是一個示例VB腳本,可以由任務調度程序調用以使ASP.NET頁面執行。

即使這種解決方案相當普遍,它並不是一個很好的解決方案。如果您有需要每日運行的定期維護任務,請創建一個控制檯應用程序並直接從計劃任務調用該應用程序。如果您需要更頻繁地運行它,或者響應其他事件,則Windows服務更好。

相關問題