如何创建窗口服务和用于发送邮件

时间:2010-12-25 06:10:22

标签: c#

我正在创建一个图书馆项目,并希望自动为违规者发送邮件(谁不及时归还图书)。对于在互联网上的一些搜索我发现窗口服务有帮助 但我无法理解正确使用 1-创建一个带有计时器的窗口服务,将当前日期与sqltable returnsndate列进行比较 (如何比较) 如果(是) 然后自动发送邮件。 请告诉我如何实施

2 个答案:

答案 0 :(得分:3)

  1. 创建新服务项目( Visual C#/ Windows / Windows服务
  2. 双击解决方案资源管理器中的服务文件
  3. 右键单击该文件的设计视图,然后从上下文菜单中添加安装程序
  4. 在设计视图中选择服务流程安装程序项,并在“属性”窗口中将 帐户属性设置为 NetworkService LocalSytem 为服务提供足够的邮件网络和数据库操作权限
  5. 在基础服务类中,您可以使用覆盖的方法 OnStart() OnStop()来控制服务的行为。你也可以覆盖 OnPause() OnShutdown() OnContinue()
  6. 如果要通过SMTP发送,请使用.NET Framework中的 SmtpClient 类:http://msdn.microsoft.com/en-us/library/system.net.mail.smtpclient.aspx
  7. 使用.NET SDK中的控制台工具 installutil.exe 来安装服务:

    installutil.exe -i myService.exe

答案 1 :(得分:0)

不要重新发明轮子。由于您可能已经在SQL中拥有数据,因此请使用内置的db-mail功能:Database Mail

只需拥有一个每日SQL代理作业,该作业会扫描表中的违规行为,并为每个人调用sp_send_dbmail