.NET程序,可以从ASP.NET调用并作为计划任务运行

时间:2013-08-08 14:20:30

标签: asp.net .net .net-4.0 webforms windows-server-2003

我需要编写一个发送电子邮件的程序......

需要在Windows中将其设置为计划任务,并从ASP.NET网站按需调用。

我知道如何编写可执行文件(我的ASP.NET网站即将完成)。

我知道如何编写程序代码,但我希望避免在两个地方重复我的代码!

我的第一个想法是编写.exe,将其设置为计划任务,并从ASP.NET网站中的代码调用它。 button_clicked但我不太确定这是个好主意。

有更好的方法(更安全,但没有更多努力)?

这是一个ASP.NET网站项目(不是应用程序)它不是解决方案的一部分 - 它应该是吗?

2 个答案:

答案 0 :(得分:1)

如果您可以访问服务器上的GAC,那么只需将代码从EXE中抽象出来并进入库程序集。将库DLL添加到GAC。然后从EXE和Web项目中引用该DLL。

如果您无法访问GAC,您仍然可以执行此操作,只需使用EXE部署DLL并将其部署到Web应用程序的bin中。

修改

这是如何创建库程序集http://broadcast.oreilly.com/2010/07/understanding-c-namespaces-and.html

答案 1 :(得分:1)

在ASP.NET中包含发送代码,并在您的网站上为计划任务请求提供受密码保护的URL(例如/send-mails?pw=jdgdifgnfdhg)。这样你就不需要EXE了。您可以使用curl.exe执行http请求。超级简单。