首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在ASP.NET表单中使用gmail SMTP

如何在ASP.NET表单中使用gmail SMTP
EN

Stack Overflow用户
提问于 2011-11-02 23:20:53
回答 7查看 32.4K关注 0票数 6

我是一个ASP新手,正在为工作排查表格故障。我们这里没有人是ASP专家,因为我们使用PHP。但我也在PHP经验的底部,主要是与HTML/CSS单独工作。我当前的表单凭据如下所示:

代码语言:javascript
复制
rotected Sub SubmitForm_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        If Not Page.IsValid Then Exit Sub

        Dim SendResultsTo As String = "email to"
        Dim smtpMailServer As String = "email server"
        Dim smtpUsername As String = "email username"
        Dim smtpPassword As String = "password"
        Dim MailSubject As String = "Form Results"

我该如何将此表单发送到Gmail地址?我知道我必须在某个地方包含port (587),但是不知道在哪里,因为这个形式与我见过的任何其他形式的语法都不匹配。任何帮助都将不胜感激!

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2011-11-03 19:20:05

代码语言:javascript
复制
protected void SendMail()
        {
            MailMessage msg = new MailMessage();
            System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient();
            try
            {
                msg.Subject = "Add Subject";
                msg.Body = "Add Email Body Part";
                msg.From = new MailAddress("Valid Email Address");
                msg.To.Add("Valid Email Address");
                msg.IsBodyHtml = true;
                client.Host = "smtp.gmail.com";
                System.Net.NetworkCredential basicauthenticationinfo = new System.Net.NetworkCredential("Valid Email Address", "Password");
                client.Port = int.Parse("587");
                client.EnableSsl = true;
                client.UseDefaultCredentials = false;
                client.Credentials = basicauthenticationinfo;
                client.DeliveryMethod = SmtpDeliveryMethod.Network;
                client.Send(msg);
            }
            catch (Exception ex)
            {
                log.Error(ex.Message);
            }
        }
票数 15
EN

Stack Overflow用户

发布于 2011-11-02 23:25:52

您可以将其添加到web.config文件中

代码语言:javascript
复制
 <system.net>
    <mailSettings>
      <smtp from="yourMailId@gmail.com ">
        <network host="smtp.gmail.com" defaultCredentials="false"
      port="587" userName ="yourmail@gmail.com" password="yourpassword" />
      </smtp>
    </mailSettings>
   </system.net>
票数 16
EN

Stack Overflow用户

发布于 2011-11-02 23:24:43

创建System.Net.Mail.SmtpClient对象,设置您正在使用的SMTP服务器信息。

然后用消息数据创建一个System.Smtl.MailMessage并发送它:

代码语言:javascript
复制
using (System.Net.Mail.SmtpClient mail = new System.Net.Mail.SmtpClient()) {
    using (System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage("from*where.com", "to@where.com") {
        IsBodyHtml = true,
        Subject = "Subject text",
        Body = messageBody,
    }) {
        mail.Send(message);
} // using

你可以在构造函数中配置你的SmtpClient,我们使用web.comfig,所以我没有那个代码。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7982810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档