C# を使用して HTML 形式のメールを送信する
    
    Muhammad Zeeshan
    2023年10月12日
    
    Csharp
    Csharp Email
    
 
この記事では、ASP.Net で C# を使用して HTML 形式のメールを送信する方法について説明します。
SMTP 経由での電子メールの送信は、現在の Gmail アカウントまたはまったく新しいアカウントでテストできます。 通信には Gmail Mailer クライアントを使用できます。
C# を使用して HTML 形式の電子メールを送信する Windows フォームを作成する
- 
ユーザー名のラベルとテキスト ボックスを追加します。 これが送信者のユーザー名になります。 
- 
Passwordのラベルとテキスト ボックスを追加します。 送信者アカウントのパスワードになります。 
- 
Sendtoのラベルとテキスト ボックスを追加します。 受信者のメールアドレスになります。 
- 
件名またはタイトルのラベルとテキスト ボックスを追加します。 
- 
最後に、Send Mailという名前のボタンを作成します。 完全なフォームは次のようになります。  
C# を使用して HTML 形式の電子メールを送信するコードを作成する
以下は、C# を使用して HTML 形式の電子メールを送信するためのコードを記述するために必要な手順です。
- 
まず、次のライブラリをインポートします。using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Net.Mail;
- 
MailMessageオブジェクトとSmtpClientオブジェクトを作成します。MailMessage mail = new MailMessage(); SmtpClient smtp = new SmtpClient("smtp.gmail.com");
- 
ここで、送信者、受信者、件名、本文などのプロパティの値を割り当てます。mail.To.Add(sendtotxt.Text); mail.Subject = subjecttxt.Text; var htmlbody = "Here your can write your html"; mail.Body = htmlbody; smtp.Port = 587; smtp.Credentials = new System.Net.NetworkCredential(usertxt.Text, passtxt.Text);
- 
SSLを有効にして、メッセージを送信します。smtp.EnableSsl = true; smtp.Send(mail);
完全なソース コード
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Net.Mail;
namespace EmailExample {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }
    private void sendbtn_Click(object sender, EventArgs e) {
      try {
        MailMessage mail = new MailMessage();
        SmtpClient smtp = new SmtpClient("smtp.gmail.com");
        mail.From = new MailAddress(usertxt.Text);
        mail.To.Add(sendtotxt.Text);
        mail.Subject = subjecttxt.Text;
        var htmlbody = "Here your can write your html";
        mail.Body = htmlbody;
        smtp.Port = 587;
        smtp.Credentials = new System.Net.NetworkCredential(usertxt.Text, passtxt.Text);
        smtp.EnableSsl = true;
        smtp.Send(mail);
        MessageBox.Show("Mail Sent!");
      } catch (Exception ex) {
        MessageBox.Show(ex.Message);
      }
    }
  }
}
出力:

        チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe
    
著者: Muhammad Zeeshan
    I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.
LinkedIn