Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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
.net 无法从传输层读取数据(内部异常)_.net_Email - Fatal编程技术网

.net 无法从传输层读取数据(内部异常)

.net 无法从传输层读取数据(内部异常),.net,email,.net,Email,我正在通过gmail帐户发送电子邮件。但当我运行程序时,发生smtp异常。当我 打开详细信息。它显示innerexception-“{”无法从传输连接读取数据: 远程主机强制关闭了现有连接。“}” **.aspx代码:** 您的电子邮件地址: **.aspx.cs** 公共无效按钮1\u单击(对象发送者,事件参数e) { SmtpClient SmtpClient=新的SmtpClient(); MailMessage=新的MailMessage(); MailAddress fromAddre

我正在通过gmail帐户发送电子邮件。但当我运行程序时,发生smtp异常。当我
打开详细信息。它显示innerexception-“{”无法从传输连接读取数据: 远程主机强制关闭了现有连接。“}”

**.aspx代码:**
您的电子邮件地址:
**.aspx.cs**
公共无效按钮1\u单击(对象发送者,事件参数e)
{
SmtpClient SmtpClient=新的SmtpClient();
MailMessage=新的MailMessage();
MailAddress fromAddress=新邮件地址(TextBox1.Text);
//您可以指定服务器的主机名或IP地址
//IIS中的默认值将为localhost
smtpClient.Host=“smtp.gmail.com”;
smtpClient.EnableSsl=true;
//默认端口为25
smtpClient.Port=25;
//发件人地址将作为MailAddress对象提供
message.From=fromAddress;
//处理邮件地址集合的步骤
message.To.Add(“irfan。dilwaley@gmail.com");
message.Subject=“反馈”;
//抄送和密件抄送可选
//MailAddressCollection类用于向各种用户发送电子邮件
//您可以将地址指定为新邮件地址(“admin1@yoursite.com")
//您可以直接将地址指定为字符串
//正文可以是Html或文本格式
//如果是html消息,请指定true
message.IsBodyHtml=false;
//消息正文内容
//发送SMTP邮件
发送(消息);
Label3.Text=“电子邮件已成功发送。”;
}
}

我看不到您在使用凭据,这可能是问题所在

// Credentials are necessary if the server requires the client 
// to authenticate before it will send e-mail on the client's behalf.
smtpClient.UseDefaultCredentials = true;

OR

smtpClient.Credentials = CredentialCache.DefaultNetworkCredentials;
另一个有用的方法是确保SMTP服务器配置正确
链接上的好例子:

您的邮件服务器可能不允许中继。请与您的邮件服务器管理员联系,找出可接受的中继策略,然后让他们实施。我如何与我的邮件服务器交谈?/我说您的邮件服务器管理员。。。一个人。我已经实现了它,但问题仍然存在
// Credentials are necessary if the server requires the client 
// to authenticate before it will send e-mail on the client's behalf.
smtpClient.UseDefaultCredentials = true;

OR

smtpClient.Credentials = CredentialCache.DefaultNetworkCredentials;