2011-10-12 80 views
1

我有一個MVC應用程序,用戶可以在其中發送大量的電子郵件(每個都是自定義的,所以沒有批量發送選項)。而不是讓用戶等待這個,我排隊郵件按計劃發送。我想要做的是讓Windows服務定期調用我的應用程序來觸發電子郵件。但是,我真的不想爲這一個操作創建一個全新的Web服務項目。有什麼方法可以將行爲包裝在MVC Action中,並讓服務以類似於調用Web服務的方式調用此操作(無需啓動瀏覽器窗口)?如果沒有,是否有可能在mvc應用程序中託管Web服務方法?如果是這樣,任何關於如何做到這一點很好的參考將不勝感激。我的搜索沒有成果。我可以從Windows服務調用MVC操作嗎?

回答

3

當然,您可以使用WebClient類對您的MVC應用的URL進行GET操作。例如:

string myUrl = "http://www.MySite.com/getemail"; 
WebClient wc = new WebClient(); 
string request = wc.DownloadString(myUrl); 
+0

天才!謝謝! – sydneyos

+0

@RedFilter你如何確保只允許特定的窗口賬戶?我有類似的問題,我的網站使用Asp.net會員表單身份驗證。我想要一個Windows服務定期調用MVC操作 –

相關問題