我有一个场景,我必须在特定时间从Windows服务时间表调用网站。我需要获取一些HTML资源,然后使用Windows服务将其发送到电子邮件。他们有可能通过Windows服务调用Web资源吗?我对.NET框架中的任何实现都持开放态度。
问候
答案 0 :(得分:0)
有一个场景,我必须在特定时间从Windows服务时间表调用网站。我需要获取一些HTML资源,然后使用Windows服务将其发送到电子邮件。
这比听起来更难。将HTML呈现到可查看的网页中的组件都需要一个Windows服务所没有的桌面。
然后你仍然需要将HTML呈现为PDF,这是.Net中没有本机支持的其他内容。您需要第三方库,如GhostScript或Adobe中的一个(不记得名称,但价格昂贵)。
当您从桌面执行此操作时,Adobe Acrobat正在进行繁重的工作,但是服务无法提供,因为Acrobat也需要桌面。
如果您可以找到一种在没有桌面或交互式会话的情况下呈现HTML的方法,则可以使用Ghostscript.Net和system.net.mail将HTML呈现为PDF。
如果这实际上不需要是服务,那将是下午在VB.Net或C#中的工作,但是如果你真的需要它作为Windows服务,那将是非常困难的。
新信息
显然PhantomJS可以无头运行并渲染网页(参见下面的链接)