从IIS应用程序池运行应用程序

时间:2013-05-16 10:06:59

标签: c# .net iis

我有一个控制台应用程序,基本上每天发送一次电子邮件。

Windows服务器管理员不允许使用此技术,并且不希望在计算机上允许额外的软件(由计划任务或服务启动)。

我被要求评估重新开发应用程序的一部分并将其集成到IIS应用程序池中的可能性,但我不认为IIS可以做到这一点。可能吗 ?如果是这样,怎么样?

到目前为止,我看过的唯一方法是将其重新开发为Web应用程序,并每天使用计划任务启动网页,但我想避免这种情况。

3 个答案:

答案 0 :(得分:2)

让我们分析您的选择:

  1. 在您的服务器中使用任务计划程序启动控制台应用
  2. 将服务器中的任务计划** r用于IIS中托管的网络服务
  3. 在无限循环中运行 IIS应用程序100%的时间,每分钟检查一次,如果恰好是正确的时间发送电子邮件
  4. 拥有 Windows服务
  5. 在其他服务器中使用任务计划程序来调用
  6. 分析每一个:

    1. KO:您的管理员不希望控制台应用程序和进程不是孤立的。
    2. KO:您已经隔离了流程但仍在安装控制台应用程序。
    3. 确定:效果不是很好,但您的行政管理条件已经达到。
    4. KO:您的管理员不想要Windows服务。
    5. ?? :可能您的管理员不想使用额外的服务器
    6. 建议的解决方案:正如您所看到的,只有选项3和5可能会通过过滤器。问他

      正确的解决方案我过去做了类似的事情并选择了2.您必须说服您的管理员解决方案3是一个坏主意,而且可能已经无法解决问题。当他不得不选择较小的邪恶时,选项2是最好的: - )

      注意:你没有提到它,但是如果你有一个SQL Server或类似的,你也可以在那里存储一个计划任务......

答案 1 :(得分:2)

当我从Apache服务器(很容易发送夜间电子邮件)转移到Windows(您可以选择)时,我遇到了类似的问题。

客户有时会把我推向SQL Mail。这并不可怕。如果您的Web应用程序具有SQL后端,并且可以在那里安排内容,则可以在正确配置时发送电子邮件。

答案 2 :(得分:1)

我不认为这是可能的。使用IIS应用程序,您需要触发加载应用程序(调用网页)。这本身就需要预定的任务。

您需要对管理员有所了解。遗憾。