0

我需要知道是否可以使用单击链接时可以打开 .docx、.doc、.pdf 等文件的 Web 服务。

我的情景。我有一个表格,它收集某些用户详细信息,如姓名、地址、......评论,还上传一两个文件,如简历、项目报告等。

验证表单后,此信息将存储在数据库中,并将包含表单详细信息的电子邮件发送到 xyz@abc.com 电子邮件地址,以便管理员始终通过电子邮件接收信息,因为它更快

我需要通过电子邮件将上传的文档作为附件发送或编写可以打开相关文档的代码。

我不确定我是否需要为此提供网络服务。

请建议最好的方法是什么。

我的网站是基于 asp.net 的。C#。

4

1 回答 1

1

在这种情况下,您实际上并不需要 Web 服务。

只需将邮件程序代码委托给您的后端例程(业务逻辑层),它可以使用您的常规System.Net.Mail. 使用smtp.SendAsync而不是smtp.Send这样您就不会最终阻止您的网络表单。您的后端例程甚至可以是 WCF 之类的服务。或单独的 .dll。仅取决于您如何构建图层。

但是,如果您的邮件程序代码位于代码隐藏本身而不是另一个层或层,那么SendAsync可能会变得棘手。然后你有几个选择:

  1. 使用async页面上的指令使其成为async页面。或者,
  2. 产生一个线程来完成这项工作,比如System.Threading.ThreadPool.QueueUserWorkItem......

还有其他解决方法,如此链接中提到的:http: //blog.jdconley.com/2009/01/fire-and-forget-email-webservices-and.html

我建议,您将工作委派给您的业务逻辑层,这对您来说很容易。

当然smtp.Send,如果开销不大,您总是可以使用同步工作。

于 2013-09-24T07:29:55.640 回答