将附件从ASP Classic传递到.Net电子邮件Web服务

时间:2012-06-06 17:20:56

标签: .net web-services asp-classic

我的公司有一个基于C#.Net的网络服务,用于发送电子邮件。此Web服务目前不支持附件。我们有许多旧的ASP Classic页面仍在使用CDONTS发送电子邮件(包括带附件的电子邮件)。我目前的任务是找出是否可以向Web服务添加附件支持,以便我们可以通过调用Web服务来替换ASP Classic CDONTS。我想要了解的是:是否可以将需要从ASP Classic附加到Web服务的文件传递给它。

  1. 我知道如何从ASP Classic调用Web服务;当我不需要附件时,我已经可以使用Classic中现有的Web服务。
  2. 我知道我可以使用CDOSYS或其他ASP Classic方法发送电子邮件:我被要求使用这个现有的Web服务。
  3. 我见过很多Web服务的例子,它们将文件作为字节数组:如何从ASP Classic创建和发送该字节数组?
  4. 我还看过很多电子邮件Web服务示例,其中服务只是在文件路径中。如果您在另一台计算机上运行Web服务,我认为这会有问题吗?您发送的路径必须可供Web服务主机访问。
  5. 任何帮助都是值得欣赏的:我发现很多文章描述了我需要做的一半,或者只是从.Net到.Net角度接近它。

1 个答案:

答案 0 :(得分:1)

您可以使用adodb.stream对象将二进制数据转换为字节数组:

Function ReadByteArray(strFileName)
    Const adTypeBinary = 1
    Dim bin : Set bin = Server.CreateObject("ADODB.Stream")
    bin.Type = adTypeBinary
    bin.Open
    bin.LoadFromFile strFileName
    ReadByteArray = bin.Read
End Function

doc of adodb.stream