2013-03-04 5 views
1

Это мой дизайн страницы:Отправка электронной почты с помощью asp.net

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="register.aspx.cs" Inherits="register" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
    <table style="border:1px solid" align="center"> 
    <tr><td>Username:</td><td><asp:TextBox runat="server" ID="txtUsername"></td></tr> 
    <tr><td>Password:</td><td><asp:TextBox runat="server" ID="txtPassword" TextMode="Password"></td></tr> 
    <tr><td valign="top">Address:</td><td><asp:TextBox runat="server" ID="txtAdress" TextMode="MultiLine"></td></tr> 
    <tr><td>Email-id:</td><td><asp:TextBox runat="server" ID="txtEmail"></td></tr> 
    <tr><td colspan="2" align="center"><asp:Button runat="server" ID="btnRegister" 
      Text="Register" onclick="btnRegister_Click" /></td></tr> 
    </table> 

    </div> 
    </form> 
</body> 
</html> 

это мой код страницы:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Net.Mail; 

public partial class register : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 
    protected void btnRegister_Click(object sender, EventArgs e) 
    { 
     MailMessage msg = new MailMessage(); 
     msg.To.Add(txtEmail.Text); 
     msg.From = new MailAddress("[email protected]"); 
     msg.Subject="thanks for registraion"; 
     msg.Body="thanks for registraion"; 
     SmtpClient obj = new SmtpClient(); 
     obj.Host = "sri";obj.Send(msg); 
     Response.Write("<h2>Registered</h2>"); 

    } 

}

Here am getting an error below.... can you please help 

Услуга недоступна, закрытие канал передачи. Сервер Ответ был: Не удалось подключиться к SMTP-серверу 100.64.243.189 (100.64.243.189:25), connect error 10061 Описание: Необработанное исключение произошло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения дополнительной информации об ошибке и , где он зародился в коде. Сведения об исключении: System.Net.Mail.SmtpException: услуга недоступна, закрывается канал передачи. Ответ сервера был: не удается подключиться к SMTP сервера 100.64.243.189 (100.64.243.189:25), подключение ошибка 10061

Source Error: 
Line 21:   msg.Body="thanks for registraion"; 
Line 22:   SmtpClient obj = new SmtpClient(); 
Line 23:   obj.Host = "sri";obj.Send(msg); 
Line 24:   Response.Write("<h2>Registered</h2>"); 
Line 25: 
+1

У вас есть SMTP-сервер в вашей сети? –

+1

Настройте параметры вашего SMTP-сервера в веб-конфигурации – abc

+0

Похоже, что этот сервер не запущен и работает - можете ли вы установить telnet до 100.64.243.189 на порт 25? – CalC

ответ

1

Там может быть две причины:

  1. Это обычно является результатом попытки подключиться к услуге, которая неактивен на хосте.

  2. Иногда ошибка 10061 вызвана либо наличием программного обеспечения брандмауэра, либо антивирусом на локальном компьютере или сетевом подключении.

Любой из них может блокировать порты, необходимые для успешного соединения с сервером. Либо вы перешли на неправильный хост, либо серверное приложение, с которым вы пытаетесь связаться, не выполняется. Проверьте адрес получателя, который вы используете. Проверьте, если вы использовали имя хоста, разрешили ли он правильный адрес или нет.

2
  1. Убедитесь, что у вас есть установка на SMTP-сервер. добавьте информацию о сервере smtp в web.config. затем попробуйте это.

Необходимо указать URL-адрес сервера smtp и номер порта. SMTp

SmtpClient obj = new SmtpClient(yourSmtpServerURL); 
NetworkCredential myCreds = new NetworkCredential("[email protected]", "YourPassword", "");   
      obj.Credentials = myCreds; 

то теперь называют obj.send.

0

Убедитесь, чтобы настроить SMTP на файл конфигурации веб-

<system.net> 
<mailSettings> 
    <smtp> 
    <network host="[email protected]" port="25" userName="user" password="password" defaultCredentials="true" /> 
    </smtp> 
</mailSettings> 
</system.net> 
0

Вы можете применить настройки SMTP в web.config, поставив этот раздел внутри:

<system.net> 
    <mailSettings> 
     <smtp deliveryMethod="Network" from="..."> 
     <network host="smtp.gmail.com" port="587" defaultCredentials="false" userName="" password="" enableSsl="true" /> 
     </smtp> 
    </mailSettings> 
    </system.net> 

Этот пример показывает конфигурацию для Gmail SMTP сервер.

0
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(); 
message.Subject = "Title"; 
message.From = new System.Net.Mail.MailAddress(yourEmailExpeditor); 
message.Body = "content message here"; 

//Initialize the smtp 
System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient(adress,int.Parse(port)); 
//Send the message 
smtp.Send(message); 
0

Вы должны предоставить учетные данные ..проверить код ниже раз

 MailAddress to = new MailAddress("Email Id"); 

     MailAddress from = new MailAddress("Email Id"); 

     MailMessage mail = new MailMessage(from, to); 

     mail.Subject = ""; 
     mail.Body = ""; 


     SmtpClient smtp = new SmtpClient(); 
     smtp.Host = "smtp.gmail.com"; 
     smtp.Port = 587; 

     smtp.Credentials = new NetworkCredential(
      "Email Id", "Password"); 
     smtp.EnableSsl = true; 

     smtp.Send(mail); 

Вы должны добавить ниже пространств имен

using System.Net.Mail; 
using System.Net; 
Смежные вопросы