Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从我的域本地发送电子邮件到域外的电子邮件_C#_Iis_Smtp_Sendmail - Fatal编程技术网

C# 从我的域本地发送电子邮件到域外的电子邮件

C# 从我的域本地发送电子邮件到域外的电子邮件,c#,iis,smtp,sendmail,C#,Iis,Smtp,Sendmail,我想检查一下是否在本地发送电子邮件。我使用这个代码 If DT.Rows.Count > 0 Then Dim TmpEmail As String = DT.Rows(0).Item("email").ToString Dim mail As New MailMessage() Dim SmtpClient As New SmtpClient("webmail.namespace.net")

我想检查一下是否在本地发送电子邮件。我使用这个代码

If DT.Rows.Count > 0 Then
            Dim TmpEmail As String = DT.Rows(0).Item("email").ToString

            Dim mail As New MailMessage()
            Dim SmtpClient As New SmtpClient("webmail.namespace.net")

            mail.From = New MailAddress("mymail@mynamespace.net")

            mail.[To].Add(TmpEmail)
            mail.Subject = " subject" & Subject_EmailType_Max10Char
            mail.IsBodyHtml = True
            mail.Body = BodyHtml

            SmtpClient.Port = 25

            SmtpClient.DeliveryMethod = SmtpDeliveryMethod.Network
            SmtpClient.UseDefaultCredentials = False
            SmtpClient.Credentials = New System.Net.NetworkCredential("mymail@mynamespace.net", "########password")
            SmtpClient.EnableSsl = True
            SmtpClient.Timeout = 200000
            SmtpClient.Send(mail)
当我向网络的同一域发送电子邮件时,电子邮件发送成功,但当我向gmail发送电子邮件时,错误邮箱不可用。服务器响应为:5.7.1发送电子邮件时将显示无法中继。当我从outlook向域外发送电子邮件时,没有问题。 我使用的是Framework4.5VisualStudio2012。 我在谷歌上搜索它,并找到类似的解决方案,但我不想安装IIS6。我想在本地查一下。有什么想法吗


我还将我的gmail用作mail.From和for SmtpClient。凭据设置我的gmail和密码,并将SmtpClient.Port=587和Dim SmtpClient设置为新的SmtpClientsmtp.gmail.com,并将电子邮件发送到gmail帐户。问题仍然存在。错误是发送邮件失败。

我在中尝试了多个答案,并更改了密码3次,全部失败他们很强壮。最后,它在第三次更改密码时起作用。我应该提到,它在本地主机上不起作用,但在外部服务器主机上发布时起作用。

这是一种服务器配置,webmail.comsec.gov.iq的管理员应该启用中继发送。您无法在c代码中启用it客户端。@bradbury9但当我从outlook向域外发送电子邮件时没有问题。管理员说中继发送已启用。我迄今为止的经验表明,如果:a您未通过电子邮件服务器的身份验证,中继消息可能会引发。大多数服务器只允许中继到正确的经过身份验证的请求。a电子邮件服务器不允许中继。@bradbury9我使用我的gmail作为邮件。发件人和发件人为SmtpClient。凭据设置我的gmail和密码,并将SmtpClient.Port=587和Dim SmtpClient设置为新的SmtpClientsmtp.gmail.com,然后将电子邮件发送到gmail帐户。问题仍然存在。错误是发送邮件失败。.gmail不使用端口25。。。检查此答案以了解实际的Gmail SMTP参数和示例代码