【问题标题】:can an asp.net page send an email to the userasp.net 页面可以向用户发送电子邮件吗
【发布时间】:2009-06-08 19:35:41
【问题描述】:

我的 aspx 页面由 Discountasp.net 托管。我可以使用 System.Net.Mail.MailMessage 发送电子邮件,但它似乎必须是我的 Discountasp.net 帐户。 (他们让您为您的网站设置电子邮件帐户。)

我想要一个可以进行计算并将信息直接发送给输入了电子邮件地址的用户的表单。

【问题讨论】:

    标签: asp.net email


    【解决方案1】:

    这里是 DiscountASP.NET“如何在 ASP.NET 2.0 中发送电子邮件”常见问题解答的链接:https://support.discountasp.net/KB/a364/how-to-send-email-in-aspnet-20.aspx。看起来您使用“localhost”作为您的 SMTP 服务器,尝试演示,看看它是否适合您。祝你好运!

    【讨论】:

    • 就是这样。我正在使用 smtp.myspecificdomain.com 但 localhost 是有效的。我添加了一行设置我在 msdn 示例中看到的 DefaultNetworkCredentials,但我不知道这是否有必要。
    【解决方案2】:

    首先,您需要与您的 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

    【讨论】:

    • 这可能是问题所在。 web.config 文件中必须包含什么?我什至没有将它复制到主机,因为我不需要登录/会员资格
    【解决方案3】:

    我不认为他们会限制您将邮件发送到您的 discountasp.net 帐户。在我想象这是对 discountasp.net 的限制之前,我会想象你可能做错了什么。

    如果这确实是一个限制,您应该与那里的客户服务联系,让他们为您解决困惑。

    【讨论】:

      【解决方案4】:

      使用 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)
      

      【讨论】:

      • 这就像我正在做的那样,但我得到一个例外“在这个位置不是一个有效的用户”,除非我的 discountasp.net 用户被用作你的第一行代码中的第二个参数。
      【解决方案5】:
      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)
      

      【讨论】:

        猜你喜欢
        • 2012-11-17
        • 2011-12-15
        • 2021-10-07
        • 1970-01-01
        • 2011-09-22
        • 2012-06-11
        • 1970-01-01
        • 2020-05-25
        • 1970-01-01
        相关资源
        最近更新 更多