Mengirim email dalam .NET melalui Gmail


876

Alih-alih mengandalkan tuan rumah saya untuk mengirim email, saya lebih memilih mengirim pesan email menggunakan akun Gmail saya . Email adalah email yang dipersonalisasi untuk band yang saya mainkan di acara saya.

Apakah mungkin untuk melakukannya?


1
< systemnetmail.com > mungkin adalah situs terlengkap yang tidak masuk akal yang didedikasikan untuk satu namespace .NET ... tetapi memiliki SEMUA yang Anda ingin tahu tentang mengirim email melalui. NET, baik itu ASP.NET atau Desktop. < systemwebmail.com > adalah URL asli di pos, tetapi tidak boleh digunakan untuk .NET 2.0 dan di atasnya.
Adam Haile

13
Jika Anda menggunakan ASP.Net Mvc, saya akan merekomendasikan untuk melihat MvcMailer: github.com/smsohan/MvcMailer/wiki/MvcMailer-Langkah-dengan-Langkah-Gunakan
noocyte

Saya punya contoh yang bagus tentang bagaimana melakukan ini di situs saya jarloo.com/gmail-in-c
Kelly

cara mengirim file menggunakan kode ini?
Ranadheer Reddy

Jawaban:


1065

Pastikan untuk menggunakan System.Net.Mail, bukan yang usang System.Web.Mail. Melakukan SSL dengan System.Web.Mailadalah kekacauan ekstensi hacky.

using System.Net;
using System.Net.Mail;

var fromAddress = new MailAddress("from@gmail.com", "From Name");
var toAddress = new MailAddress("to@example.com", "To Name");
const string fromPassword = "fromPassword";
const string subject = "Subject";
const string body = "Body";

var smtp = new SmtpClient
{
    Host = "smtp.gmail.com",
    Port = 587,
    EnableSsl = true,
    DeliveryMethod = SmtpDeliveryMethod.Network,
    UseDefaultCredentials = false,
    Credentials = new NetworkCredential(fromAddress.Address, fromPassword)
};
using (var message = new MailMessage(fromAddress, toAddress)
{
    Subject = subject,
    Body = body
})
{
    smtp.Send(message);
}

49
Anda masih bisa membuat pengguna tidak masuk kesalahan jika Google tiba-tiba memutuskan Anda telah mengirim terlalu banyak dalam jumlah menit xx terakhir. Anda harus selalu menambahkan trySend, jika kesalahan tidur sebentar, lalu coba lagi.
Jason Short

72
Catatan menarik: Jika Anda menukar 'UseDefaultCredentials = false,' dan 'Credentials = ...' itu tidak akan diautentikasi.
Nathan Wheeler

13
Tidak ada masalah dengan SPF menggunakan metode ini. Setiap klien email dapat dikonfigurasi untuk melakukan hal ini. Anda mungkin mendapatkan masalah jika Anda menggunakan server Anda sendiri (yaitu sesuatu yang lain dari smtp.gmail.com) dengan something@gmail.comsebagai pengirim. Btw: smtp.gmail.comsecara otomatis menimpa alamat pengirim jika bukan milik Anda.
Meinersbur

24
Saya mengalami kesulitan mendapatkan ini bekerja bahkan dengan mencoba berbagai tweak. Seperti yang disarankan pada posting terkait, saya menemukan bahwa sebenarnya antivirus saya yang mencegah pengiriman email berhasil. Antivirus yang dimaksud adalah McAffee, dan "Access Protection" -nya memiliki kategori "Antivirus Standard Protection" yang memiliki aturan "Cegah cacing surat massal agar tidak mengirim email". Tweaking / nonaktifkan aturan itu membuat kode ini berfungsi untuk saya!
yourbuddypal

18
Saya mendapatkan pesan kesalahan Diperlukan Otentikasi 5.5.1 sampai saya menyadari saya sedang menguji dengan akun (pribadi saya) yang memiliki dua faktor otentikasi dihidupkan. Setelah saya menggunakan akun yang tidak memilikinya, itu berfungsi dengan baik. Saya juga bisa membuat kata sandi untuk aplikasi saya yang saya uji dari dalam acct pribadi saya, tetapi saya tidak ingin melakukan itu.
Nick DeVore

153

Jawaban di atas tidak bekerja. Anda harus mengatur DeliveryMethod = SmtpDeliveryMethod.Networkatau itu akan kembali dengan kesalahan " klien tidak diautentikasi ". Juga selalu merupakan ide bagus untuk membuat batas waktu.

Kode yang direvisi:

using System.Net.Mail;
using System.Net;

var fromAddress = new MailAddress("from@gmail.com", "From Name");
var toAddress = new MailAddress("to@yahoo.com", "To Name");
const string fromPassword = "password";
const string subject = "test";
const string body = "Hey now!!";

var smtp = new SmtpClient
{
    Host = "smtp.gmail.com",
    Port = 587,
    EnableSsl = true,
    DeliveryMethod = SmtpDeliveryMethod.Network,
    Credentials = new NetworkCredential(fromAddress.Address, fromPassword),
    Timeout = 20000
};
using (var message = new MailMessage(fromAddress, toAddress)
{
    Subject = subject,
    Body = body
})
{
    smtp.Send(message);
}

3
Menarik; ini bekerja pada mesin saya (TM). Tetapi karena ini tampaknya masuk akal, saya akan menambahkannya ke jawaban saya.
Domenic

3
Hmm tebakan saya adalah SmtpDeliveryMethod.Network adalah default, tapi mungkin defaultnya berubah ketika berjalan di IIS --- apakah itu yang Anda lakukan?
Domenic

3
Saya menggunakan kode yang sama dalam aplikasi Konsol, ini karena kesalahan "Kegagalan mengirim surat."
Karthikeyan P

5
Jawaban ini tidak berfungsi. Silakan, lihat pertanyaan stackoverflow.com/questions/34851484/…

110

Untuk jawaban lain agar berfungsi "dari server" pertama Nyalakan Akses untuk aplikasi yang kurang aman di akun gmail.

Sepertinya baru-baru ini google mengubah kebijakan keamanannya. Jawaban berperingkat teratas tidak lagi berfungsi, sampai Anda mengubah pengaturan akun Anda seperti dijelaskan di sini: https://support.google.com/accounts/answer/6010255?hl=id-GBmasukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

Pada Maret 2016, google mengubah lokasi pengaturan lagi!


4
Ini berhasil untuk saya. Dan juga memprihatinkan. Tidak yakin saya ingin mematikan keamanan itu. Mungkin perlu memikirkan kembali ...
Sully

4
Dari sudut pandang keamanan lebih baik untuk mengaktifkan Verifikasi 2 langkah dan kemudian menghasilkan dan menggunakan kata sandi aplikasi - lihat Cara mengirim email di .Net sesuai dengan kebijakan keamanan baru?
Michael Freidgeim

2
@BCS Software, dalam program saya, pengguna memasukkan email apa pun yang harus digunakan oleh program saya untuk mengirim pesan. Jadi, bagaimana saya bisa membuat pengguna email dapat mengirim email bahkan jika otentikasi 2-faktor dihidupkan ??
Alaa

Ini adalah pengaturan yang sama yang harus Anda ubah jika Anda ingin menggunakan klien Microsoft Outlook (di desktop, ponsel, dll) untuk mengirim / menerima email melalui Gmail Google.
Brett Rigby

41

Ini untuk mengirim email dengan lampiran .. Sederhana dan pendek ..

sumber: http://coding-issues.blogspot.in/2012/11/sending-email-with-attachments-from-c.html

using System.Net;
using System.Net.Mail;

public void email_send()
{
    MailMessage mail = new MailMessage();
    SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
    mail.From = new MailAddress("your mail@gmail.com");
    mail.To.Add("to_mail@gmail.com");
    mail.Subject = "Test Mail - 1";
    mail.Body = "mail with attachment";

    System.Net.Mail.Attachment attachment;
    attachment = new System.Net.Mail.Attachment("c:/textfile.txt");
    mail.Attachments.Add(attachment);

    SmtpServer.Port = 587;
    SmtpServer.Credentials = new System.Net.NetworkCredential("your mail@gmail.com", "your password");
    SmtpServer.EnableSsl = true;

    SmtpServer.Send(mail);

}

21

Google dapat memblokir upaya masuk dari beberapa aplikasi atau perangkat yang tidak menggunakan standar keamanan modern. Karena aplikasi dan perangkat ini lebih mudah untuk dibobol, memblokirnya membantu menjaga keamanan akun Anda.

Beberapa contoh aplikasi yang tidak mendukung standar keamanan terbaru meliputi:

  • Aplikasi Mail di iPhone atau iPad Anda dengan iOS 6 atau lebih rendah
  • Aplikasi Mail di ponsel Windows Anda sebelum rilis 8.1
  • Beberapa klien surat Desktop seperti Microsoft Outlook dan Mozilla Thunderbird

Karena itu, Anda harus mengaktifkan Sign-In Kurang Aman di akun google Anda.

Setelah masuk ke akun google, buka:

https://myaccount.google.com/lesssecureapps
atau
https://www.google.com/settings/security/lesssecureapps

Di C #, Anda dapat menggunakan kode berikut:

using (MailMessage mail = new MailMessage())
{
    mail.From = new MailAddress("email@gmail.com");
    mail.To.Add("somebody@domain.com");
    mail.Subject = "Hello World";
    mail.Body = "<h1>Hello</h1>";
    mail.IsBodyHtml = true;
    mail.Attachments.Add(new Attachment("C:\\file.zip"));

    using (SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587))
    {
        smtp.Credentials = new NetworkCredential("email@gmail.com", "password");
        smtp.EnableSsl = true;
        smtp.Send(mail);
    }
}


16

Ini versi saya: " Kirim Email Dalam C # Menggunakan Gmail ".

using System;
using System.Net;
using System.Net.Mail;

namespace SendMailViaGmail
{
   class Program
   {
   static void Main(string[] args)
   {

      //Specify senders gmail address
      string SendersAddress = "Sendersaddress@gmail.com";
      //Specify The Address You want to sent Email To(can be any valid email address)
      string ReceiversAddress = "ReceiversAddress@yahoo.com";
      //Specify The password of gmial account u are using to sent mail(pw of sender@gmail.com)
      const string SendersPassword = "Password";
      //Write the subject of ur mail
      const string subject = "Testing";
      //Write the contents of your mail
      const string body = "Hi This Is my Mail From Gmail";

      try
      {
        //we will use Smtp client which allows us to send email using SMTP Protocol
        //i have specified the properties of SmtpClient smtp within{}
        //gmails smtp server name is smtp.gmail.com and port number is 587
        SmtpClient smtp = new SmtpClient
        {
           Host = "smtp.gmail.com",
           Port = 587,
           EnableSsl = true,
           DeliveryMethod = SmtpDeliveryMethod.Network,
           Credentials    = new NetworkCredential(SendersAddress, SendersPassword),
           Timeout = 3000
        };

        //MailMessage represents a mail message
        //it is 4 parameters(From,TO,subject,body)

        MailMessage message = new MailMessage(SendersAddress, ReceiversAddress, subject, body);
        /*WE use smtp sever we specified above to send the message(MailMessage message)*/

        smtp.Send(message);
        Console.WriteLine("Message Sent Successfully");
        Console.ReadKey();
     }

     catch (Exception ex)
     {
        Console.WriteLine(ex.Message);
        Console.ReadKey();
     }
    }
   }
 }

8
Walaupun artikel Anda mungkin sebenarnya menjawab pertanyaan, akan lebih baik untuk memasukkan bagian-bagian penting dari jawaban di sini, dan menyediakan tautan untuk referensi. Stack Overflow hanya berguna sebagai pertanyaan dan jawaban, dan jika host blog Anda turun atau URL Anda dipindahkan, jawaban ini menjadi tidak berguna. Terima kasih!
sarnold

14

Saya harap kode ini akan berfungsi dengan baik. Anda bisa mencoba.

// Include this.                
using System.Net.Mail;

string fromAddress = "xyz@gmail.com";
string mailPassword = "*****";       // Mail id password from where mail will be sent.
string messageBody = "Write the body of the message here.";


// Create smtp connection.
SmtpClient client = new SmtpClient();
client.Port = 587;//outgoing port for the mail.
client.Host = "smtp.gmail.com";
client.EnableSsl = true;
client.Timeout = 10000;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(fromAddress, mailPassword);


// Fill the mail form.
var send_mail = new MailMessage();

send_mail.IsBodyHtml = true;
//address from where mail will be sent.
send_mail.From = new MailAddress("from@gmail.com");
//address to which mail will be sent.           
send_mail.To.Add(new MailAddress("to@example.com");
//subject of the mail.
send_mail.Subject = "put any subject here";

send_mail.Body = messageBody;
client.Send(send_mail);

2
message send_mail = new MailMessage (); Bagaimana garis ini seharusnya bekerja? Anda tidak dapat secara implisit mengubah 'System.Net.Mail.MailMessage' ke 'System.Windows.Forms.Message'
Debaprasad

9

Sertakan ini,

using System.Net.Mail;

Lalu,

MailMessage sendmsg = new MailMessage(SendersAddress, ReceiversAddress, subject, body); 
SmtpClient client = new SmtpClient("smtp.gmail.com");

client.Port = Convert.ToInt16("587");
client.Credentials = new System.Net.NetworkCredential("mail-id@gmail.com","password");
client.EnableSsl = true;

client.Send(sendmsg);

8

Sumber : Kirim email dalam ASP.NET C #

Di bawah ini adalah contoh kode kerja untuk mengirim email menggunakan C #, dalam contoh di bawah ini saya menggunakan server smtp google.

Kode ini cukup jelas, ganti email dan kata sandi dengan nilai email dan kata sandi Anda.

public void SendEmail(string address, string subject, string message)
{
    string email = "yrshaikh.mail@gmail.com";
    string password = "put-your-GMAIL-password-here";

    var loginInfo = new NetworkCredential(email, password);
    var msg = new MailMessage();
    var smtpClient = new SmtpClient("smtp.gmail.com", 587);

    msg.From = new MailAddress(email);
    msg.To.Add(new MailAddress(address));
    msg.Subject = subject;
    msg.Body = message;
    msg.IsBodyHtml = true;

    smtpClient.EnableSsl = true;
    smtpClient.UseDefaultCredentials = false;
    smtpClient.Credentials = loginInfo;
    smtpClient.Send(msg);
}

Alih-alih var, saya telah menggunakan nama kelas seperti NetworkCredential, MailMessage dan SmtpClient. Ini bekerja untuk saya.
Jui Test

7

Jika Anda ingin mengirim email latar belakang, silakan lakukan di bawah ini

 public void SendEmail(string address, string subject, string message)
 {
 Thread threadSendMails;
 threadSendMails = new Thread(delegate()
    {

      //Place your Code here 

     });
  threadSendMails.IsBackground = true;
  threadSendMails.Start();
}

dan tambahkan namespace

using System.Threading;


5

Coba ini,

    private void button1_Click(object sender, EventArgs e)
    {
        try
        {
            MailMessage mail = new MailMessage();
            SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");

            mail.From = new MailAddress("your_email_address@gmail.com");
            mail.To.Add("to_address");
            mail.Subject = "Test Mail";
            mail.Body = "This is for testing SMTP mail from GMAIL";

            SmtpServer.Port = 587;
            SmtpServer.Credentials = new System.Net.NetworkCredential("username", "password");
            SmtpServer.EnableSsl = true;

            SmtpServer.Send(mail);
            MessageBox.Show("mail Send");
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
    }

4

gunakan cara ini

MailMessage sendmsg = new MailMessage(SendersAddress, ReceiversAddress, subject, body); 
SmtpClient client = new SmtpClient("smtp.gmail.com");

client.Port = Convert.ToInt32("587");
client.EnableSsl = true;
client.Credentials = new System.Net.NetworkCredential("mail-id@gmail.com","MyPassWord");
client.Send(sendmsg);

Jangan lupakan ini:

using System.Net;
using System.Net.Mail;

4

Untuk menghindari masalah keamanan di Gmail, Anda harus membuat kata sandi aplikasi terlebih dahulu dari pengaturan Gmail Anda dan Anda dapat menggunakan kata sandi ini alih-alih kata sandi asli untuk mengirim email bahkan jika Anda menggunakan verifikasi dua langkah.


3

Mengubah pengirim di email Gmail / Outlook.com:

Untuk mencegah spoofing - Gmail / Outlook.com tidak akan membiarkan Anda mengirim dari nama akun pengguna yang sewenang-wenang.

Jika Anda memiliki jumlah pengirim yang terbatas, Anda dapat mengikuti instruksi ini dan kemudian mengatur Frombidang ke alamat ini: Mengirim email dari alamat yang berbeda

Jika Anda ingin mengirim dari alamat email yang sewenang-wenang (seperti formulir umpan balik di situs web tempat pengguna memasukkan email mereka dan Anda tidak ingin mereka mengirim email langsung kepada Anda) tentang hal terbaik yang dapat Anda lakukan adalah ini:

        msg.ReplyToList.Add(new System.Net.Mail.MailAddress(email, friendlyName));

Ini akan membiarkan Anda hanya menekan 'balas' di akun email Anda untuk membalas penggemar band Anda di halaman umpan balik, tetapi mereka tidak akan mendapatkan email Anda yang sebenarnya yang akan mengarah ke satu ton spam.

Jika Anda berada dalam lingkungan yang terkendali, ini berfungsi dengan baik, tetapi harap perhatikan bahwa saya telah melihat beberapa klien email mengirim ke alamat from bahkan ketika reply-to ditentukan (saya tidak tahu yang mana).


3

Saya memiliki masalah yang sama, tetapi diselesaikan dengan masuk ke pengaturan keamanan gmail dan Mengizinkan aplikasi Kurang Aman . Kode dari Domenic & Donny berfungsi, tetapi hanya jika Anda mengaktifkan pengaturan itu

Jika Anda masuk (ke Google), Anda dapat mengikuti tautan ini dan beralih "Aktifkan" untuk "Akses untuk aplikasi yang kurang aman"


3
using System;
using System.Net;
using System.Net.Mail;

namespace SendMailViaGmail
{
   class Program
   {
   static void Main(string[] args)
   {

      //Specify senders gmail address
      string SendersAddress = "Sendersaddress@gmail.com";
      //Specify The Address You want to sent Email To(can be any valid email address)
      string ReceiversAddress = "ReceiversAddress@yahoo.com";
      //Specify The password of gmial account u are using to sent mail(pw of sender@gmail.com)
      const string SendersPassword = "Password";
      //Write the subject of ur mail
      const string subject = "Testing";
      //Write the contents of your mail
      const string body = "Hi This Is my Mail From Gmail";

      try
      {
        //we will use Smtp client which allows us to send email using SMTP Protocol
        //i have specified the properties of SmtpClient smtp within{}
        //gmails smtp server name is smtp.gmail.com and port number is 587
        SmtpClient smtp = new SmtpClient
        {
           Host = "smtp.gmail.com",
           Port = 587,
           EnableSsl = true,
           DeliveryMethod = SmtpDeliveryMethod.Network,
           Credentials = new NetworkCredential(SendersAddress, SendersPassword),
           Timeout = 3000
        };

        //MailMessage represents a mail message
        //it is 4 parameters(From,TO,subject,body)

        MailMessage message = new MailMessage(SendersAddress, ReceiversAddress, subject, body);
        /*WE use smtp sever we specified above to send the message(MailMessage message)*/

        smtp.Send(message);
        Console.WriteLine("Message Sent Successfully");
        Console.ReadKey();
     }
     catch (Exception ex)
     {
        Console.WriteLine(ex.Message);
        Console.ReadKey();
     }
}
}
}

2

Berikut adalah salah satu metode untuk mengirim email dan mendapatkan kredensial dari web.config:

public static string SendEmail(string To, string Subject, string Msg, bool bodyHtml = false, bool test = false, Stream AttachmentStream = null, string AttachmentType = null, string AttachmentFileName = null)
{
    try
    {
        System.Net.Mail.MailMessage newMsg = new System.Net.Mail.MailMessage(System.Configuration.ConfigurationManager.AppSettings["mailCfg"], To, Subject, Msg);
        newMsg.BodyEncoding = System.Text.Encoding.UTF8;
        newMsg.HeadersEncoding = System.Text.Encoding.UTF8;
        newMsg.SubjectEncoding = System.Text.Encoding.UTF8;

        System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient();
        if (AttachmentStream != null && AttachmentType != null && AttachmentFileName != null)
        {
            System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(AttachmentStream, AttachmentFileName);
            System.Net.Mime.ContentDisposition disposition = attachment.ContentDisposition;
            disposition.FileName = AttachmentFileName;
            disposition.DispositionType = System.Net.Mime.DispositionTypeNames.Attachment;

            newMsg.Attachments.Add(attachment);
        }
        if (test)
        {
            smtpClient.PickupDirectoryLocation = "C:\\TestEmail";
            smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.SpecifiedPickupDirectory;
        }
        else
        {
            //smtpClient.EnableSsl = true;
        }

        newMsg.IsBodyHtml = bodyHtml;
        smtpClient.Send(newMsg);
        return SENT_OK;
    }
    catch (Exception ex)
    {

        return "Error: " + ex.Message
             + "<br/><br/>Inner Exception: "
             + ex.InnerException;
    }

}

Dan bagian yang sesuai di web.config:

<appSettings>
    <add key="mailCfg" value="yourmail@example.com"/>
</appSettings>
<system.net>
  <mailSettings>
    <smtp deliveryMethod="Network" from="yourmail@example.com">
      <network defaultCredentials="false" host="mail.exapmple.com" userName="yourmail@example.com" password="your_password" port="25"/>
    </smtp>
  </mailSettings>
</system.net>

2

Coba yang ini

public static bool Send(string receiverEmail, string ReceiverName, string subject, string body)
{
        MailMessage mailMessage = new MailMessage();
        MailAddress mailAddress = new MailAddress("abc@gmail.com", "Sender Name"); // abc@gmail.com = input Sender Email Address 
        mailMessage.From = mailAddress;
        mailAddress = new MailAddress(receiverEmail, ReceiverName);
        mailMessage.To.Add(mailAddress);
        mailMessage.Subject = subject;
        mailMessage.Body = body;
        mailMessage.IsBodyHtml = true;

        SmtpClient mailSender = new SmtpClient("smtp.gmail.com", 587)
        {
            EnableSsl = true,
            UseDefaultCredentials = false,
            DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network,
            Credentials = new NetworkCredential("abc@gmail.com", "pass")   // abc@gmail.com = input sender email address  
                                                                           //pass = sender email password
        };

        try
        {
            mailSender.Send(mailMessage);
            return true;
        }
        catch (SmtpFailedRecipientException ex)
        { 
          // Write the exception to a Log file.
        }
        catch (SmtpException ex)
        { 
           // Write the exception to a Log file.
        }
        finally
        {
            mailSender = null;
            mailMessage.Dispose();
        }
        return false;
}

1

Masalahnya bagi saya adalah kata sandi saya memiliki "blackslash" hitam di dalamnya, yang saya salin disisipkan tanpa disadari akan menyebabkan masalah.


1

Menyalin dari jawaban lain , metode di atas berfungsi tetapi gmail selalu menggantikan email "from" dan "reply to" dengan akun gmail pengirim yang sebenarnya. namun ternyata ada pekerjaan di sekitar:

http://karmic-development.blogspot.in/2013/10/send-email-from-aspnet-using-gmail-as.html

"3. Di Tab Akun, Klik tautan" Tambahkan alamat email lain yang Anda miliki "lalu verifikasi"

Atau mungkin ini

Pembaruan 3: Pembaca Derek Bennett mengatakan, "Solusinya adalah masuk ke Pengaturan gmail Anda: Akun dan" Jadikan default "akun selain akun gmail Anda. Ini akan menyebabkan gmail untuk menulis ulang bidang Dari dengan apa pun email akun default itu alamatnya adalah. "


1

Anda bisa mencoba Mailkit. Ini memberi Anda fungsionalitas yang lebih baik dan lebih maju untuk mengirim email. Anda dapat menemukan lebih banyak dari ini. Berikut ini adalah contohnya

    MimeMessage message = new MimeMessage();
    message.From.Add(new MailboxAddress("FromName", "YOU_FROM_ADDRESS@gmail.com"));
    message.To.Add(new MailboxAddress("ToName", "YOU_TO_ADDRESS@gmail.com"));
    message.Subject = "MyEmailSubject";

    message.Body = new TextPart("plain")
    {
        Text = @"MyEmailBodyOnlyTextPart"
    };

    using (var client = new SmtpClient())
    {
        client.Connect("SERVER", 25); // 25 is port you can change accordingly

        // Note: since we don't have an OAuth2 token, disable
        // the XOAUTH2 authentication mechanism.
        client.AuthenticationMechanisms.Remove("XOAUTH2");

        // Note: only needed if the SMTP server requires authentication
        client.Authenticate("YOUR_USER_NAME", "YOUR_PASSWORD");

        client.Send(message);
        client.Disconnect(true);
    }
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.