2010-12-30 28 views
6

के माध्यम से Asp.Net ईमेल भेजना मैं नीचे कोड और कॉन्फ़िगर का उपयोग कर एएसपी.Net से जीमेल के माध्यम से एक ईमेल भेजने की कोशिश कर रहा हूं। दुर्भाग्यवश यह काम नहीं कर रहा प्रतीत होता है और यह एक त्रुटि संदेश फेंक नहीं रहा है। सर्वर लॉग या मेल आईआईएस मेल फ़ोल्डरों में कुछ भी नहीं है, मैंने यह पता लगाने के लिए पते से कचरे की भी जांच की है कि मेल वहां समाप्त हुआ है या नहीं। किसी भी तरह की सहायता की सच में प्रशंसा की जाएगी।जीमेल

सी # धारा

public void SendFeedback() 
    { 
     string emailFrom = this.Email.Text; 

     MailMessage message = new MailMessage(); 
     // here is an important part: 
     message.From = new MailAddress(emailFrom, "Mailer"); 
     // it's superfluous part here since from address is defined in .config file 
     // in my example. But since you don't use .config file, you will need it. 
     message.Subject = "www.gumpshen.com - Website Query"; 
     message.IsBodyHtml = true; 
     message.Body = string.Format(" Name = {0}, Phone = {1}", Name.Text, Phone.Text); 
     message.Body += Environment.NewLine; 
     message.Body += Environment.NewLine; 
     message.Body += ProjectDetails.Text; ; 

     var client = new SmtpClient(); 

     try 
     { 
      client.Send(message); 

यह कॉन्फ़िग खंड है:

<system.net> 
    <mailSettings> 
    <smtp from="[email protected]" deliveryMethod="Network" > 
     <network host="smtp.gmail.com" port="587" 
     userName="[email protected]" password="myPassword"/> 
    </smtp> 
    </mailSettings> 
</system.net> 
+0

मैं इसे एक आभासी निजी सर्वर पर होस्ट है, यह रास्ता नहीं मैं IIS7 में SMTP मेल कॉन्फ़िगर किया है के साथ क्या करने के लिए कुछ हो सकता है लेकिन मैं सिर्फ जादूगर भाग गया। – Burt

उत्तर

9

आप की जरूरत है client.EnableSsl=true;

इस साइट से कोड की जाँच करें: Email via Gmail

यहां एक उदाहरण है कि अपने Google खाते का उपयोग करके अपने एएसपी.NET पृष्ठ से HTML ईमेल कैसे भेजें। (इस सेटअप को किसी अन्य SMTP सर्वर के माध्यम से संदेशों को भेजने के लिए आसानी से उपयोग किया जा सकता है जिसके लिए प्रमाणीकरण की आवश्यकता होती है)। नोट: कोड स्निपेट मानता है कि आपके पास नामित lblMsg वाले पृष्ठ पर एक लेबल घटक है जो ईमेल भेजने वाले उपयोगकर्ता को सफलता/विफलता संदेश दिखाएगा। (लेकिन इसे आसानी से बदला जा सकता है)।

SmtpClient client = new SmtpClient(); 
    client.DeliveryMethod = SmtpDeliveryMethod.Network; 
    client.EnableSsl = true; 
    client.Host = "smtp.gmail.com"; 
    client.Port = 587; 

    // setup Smtp authentication 
    System.Net.NetworkCredential credentials = 
     new System.Net.NetworkCredential("[email protected]", "yourpassword"); 
    client.UseDefaultCredentials = false; 
    client.Credentials = credentials;     

    MailMessage msg = new MailMessage(); 
    msg.From = new MailAddress("[email protected]"); 
    msg.To.Add(new MailAddress("[email protected]")); 

    msg.Subject = "This is a test Email subject"; 
    msg.IsBodyHtml = true; 
    msg.Body = string.Format("<html><head></head><body><b>Test HTML Email</b></body>"); 

    try 
    { 
     client.Send(msg); 
     lblMsg.Text = "Your message has been successfully sent."; 
    } 
    catch (Exception ex) 
    { 
     lblMsg.ForeColor = Color.Red; 
     lblMsg.Text = "Error occured while sending your message." + ex.Message; 
    } 
+0

https://web.archive.org/web/20130531014149/http://www.aspdotnetfaq.com/Faq/How-to-send-HTML-Email-from-ASP-NET-using-your-Gmail-account .aspx नहीं मिला – Kiquenet

संबंधित मुद्दे