【发布时间】:2009-06-08 19:35:41
【问题描述】:
我的 aspx 页面由 Discountasp.net 托管。我可以使用 System.Net.Mail.MailMessage 发送电子邮件,但它似乎必须是我的 Discountasp.net 帐户。 (他们让您为您的网站设置电子邮件帐户。)
我想要一个可以进行计算并将信息直接发送给输入了电子邮件地址的用户的表单。
【问题讨论】:
我的 aspx 页面由 Discountasp.net 托管。我可以使用 System.Net.Mail.MailMessage 发送电子邮件,但它似乎必须是我的 Discountasp.net 帐户。 (他们让您为您的网站设置电子邮件帐户。)
我想要一个可以进行计算并将信息直接发送给输入了电子邮件地址的用户的表单。
【问题讨论】:
这里是 DiscountASP.NET“如何在 ASP.NET 2.0 中发送电子邮件”常见问题解答的链接:https://support.discountasp.net/KB/a364/how-to-send-email-in-aspnet-20.aspx。看起来您使用“localhost”作为您的 SMTP 服务器,尝试演示,看看它是否适合您。祝你好运!
【讨论】:
首先,您需要与您的 ISP 核实他们使用的 smtp 设置(以及在被列入垃圾邮件发送者黑名单之前,您可能要发送多少封电子邮件,具体取决于您将其用于什么目的......)
其次,当您在web.config 中设置正确时,您应该可以发送给任何人。
编辑,回应评论:
为了能够正确使用System.Net.Mail,您应该将 smtp 设置(您需要从 ISP/Hosting 服务获取)添加到web.config,如下所示:
<configuration>
<system.net>
<mailSettings>
<smtp from="test@foo.com">
<network host="smtpserver1" port="25" userName="username"
password="secret" defaultCredentials="true" />
</smtp>
</mailSettings>
</system.net>
</configuration>
更多信息请参见this tutorial。
【讨论】:
我不认为他们会限制您将邮件发送到您的 discountasp.net 帐户。在我想象这是对 discountasp.net 的限制之前,我会想象你可能做错了什么。
如果这确实是一个限制,您应该与那里的客户服务联系,让他们为您解决困惑。
【讨论】:
使用 System.Net.Mail.MailMessage 你应该能够设置任何你想要的 SMTP 地址。
Dim message As New MailMessage("address@address.com", "address2@address.com")
message.Subject = "MessageSubject"
message.Body = "MessageBody"
Dim client As New SmtpClient(*EmailServerAddress*)
client.Send(message)
【讨论】:
dim mailObj as new MailMessage
mailObj.From = {from address}
mailObj.To = {to address}
mailObj.Subject = {subject}
mailObj.BodyFormat = MailFormat.Html
mailObj.Body = {body of message}
SmtpMail.SmtpServer = {mailserver name or IP}
SmtpMail.Send(mailObj)
【讨论】: