c# 实现发送邮件到指定邮箱

C#实现发送邮件到指定邮箱的攻略可以分为以下几个步骤:

  1. 导入命名空间

在C#中,我们需要使用System.Net.Mail这个命名空间来实现邮件发送功能,因此需要在开头添加该命名空间的引用。

using System.Net.Mail;
  1. 配置SMTP服务器信息

在使用C#发送邮件前,我们需要先配置SMTP服务器的相关信息,包括SMTP服务器地址、端口号、用户名、密码等。

SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.163.com"; // 邮件服务器地址
smtp.Port = 25; // 邮件服务器端口
smtp.UseDefaultCredentials = true; // 是否使用默认凭证
smtp.DeliveryMethod = SmtpDeliveryMethod.Network; // 邮件发送模式
smtp.Credentials = new System.Net.NetworkCredential("用户名", "密码"); // 邮箱登录信息
  1. 创建邮件对象

在发送邮件前,需要先创建邮件对象,包括邮件的收件人、发件人、主题、内容等信息。

MailMessage mail = new MailMessage();
mail.From = new MailAddress("发件人邮箱");
mail.To.Add("收件人邮箱");
mail.Subject = "邮件主题";
mail.Body = "邮件内容";
mail.IsBodyHtml = true; // 邮件内容是否为Html格式
  1. 添加附件(可选)

如果需要在邮件中添加附件,可以使用MailMessage类的Attachments属性来实现。

Attachment attachment = new Attachment(@"附件路径");
mail.Attachments.Add(attachment);
  1. 发送邮件

发送邮件可以使用SmtpClient类的Send方法来实现。

smtp.Send(mail);

下面是一个完整的代码示例,它实现了调用C#发送一封邮件到指定邮箱的功能:

using System;
using System.Net.Mail;

namespace MyNamespace
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                // 初始化SMTP服务器信息
                SmtpClient smtp = new SmtpClient();
                smtp.Host = "smtp.163.com";
                smtp.Port = 25;
                smtp.UseDefaultCredentials = true;
                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
                smtp.Credentials = new System.Net.NetworkCredential("发件人邮箱", "发件人邮箱密码");

                // 创建邮件对象
                MailMessage mail = new MailMessage();
                mail.From = new MailAddress("发件人邮箱");
                mail.To.Add("收件人邮箱");
                mail.Subject = "邮件主题";
                mail.Body = "邮件内容";
                mail.IsBodyHtml = true;

                // 添加附件
                Attachment attachment = new Attachment(@"附件路径");
                mail.Attachments.Add(attachment);

                // 发送邮件
                smtp.Send(mail);

                Console.WriteLine("邮件发送成功!");
            }
            catch (Exception ex)
            {
                Console.WriteLine("发送邮件时发生错误:" + ex.Message);
            }
            Console.ReadKey();
        }
    }
}

另外,如果你想要发送简单的文本邮件,可以使用下面的示例代码:

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

namespace MyNamespace
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                // 初始化SMTP服务器信息
                SmtpClient smtp = new SmtpClient();
                smtp.Host = "smtp.163.com";
                smtp.Port = 25;
                smtp.UseDefaultCredentials = true;
                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
                smtp.Credentials = new System.Net.NetworkCredential("发件人邮箱", "发件人邮箱密码");

                // 创建邮件对象
                MailMessage mail = new MailMessage();
                mail.From = new MailAddress("发件人邮箱");
                mail.To.Add("收件人邮箱");
                mail.Subject = "邮件主题";
                mail.Body = "邮件内容";

                // 发送邮件
                smtp.Send(mail);

                Console.WriteLine("邮件发送成功!");
            }
            catch (Exception ex)
            {
                Console.WriteLine("发送邮件时发生错误:" + ex.Message);
            }
            Console.ReadKey();
        }
    }
}

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c# 实现发送邮件到指定邮箱 - Python技术站

(0)
上一篇 2023年6月1日
下一篇 2023年6月1日

相关文章

  • asp.net网站实现接入QQ登录示例代码

    下面是ASP.NET网站接入QQ登录的完整攻略。 创建QQ互联应用首先需要在腾讯开放平台上注册并创建一个QQ互联应用。具体步骤为:1)登录QQ互联平台(https://connect.qq.com/)2)进入应用管理界面3)新建应用,填写应用名称、应用类型、应用描述等信息4)在接口权限管理中添加网站登录、获取用户信息等接口的权限5)保存并获取应用的APP I…

    C# 2023年5月31日
    00
  • .Net Core 多文件打包压缩的实现代码

    .NET Core 多文件打包压缩的实现代码 在.NET Core应用程序中,有时需要将多个文件打包成一个压缩文件,以便于传输或存储。在本攻略中,我们将介绍如何使用C#代码实现多文件打包压缩,并提供两个示例说明。 1. 使用System.IO.Compression命名空间 在.NET Core应用程序中,可以使用System.IO.Compression命…

    C# 2023年5月16日
    00
  • C#使用Task实现执行并行任务的原理的示例详解

    下面就来详细讲解如何使用C#的Task库实现并行执行任务的原理及示例。 什么是Task Task是.NET Framework 4.5及以上版本中新增的一个库,它的主要作用是提供一种方便、高效的方式来管理并发和异步编程相关的任务。相比较于自行利用Thread和ThreadPool管理线程,使用Task可以更方便地控制异步任务,并且能够支持更多种的异步模型。 …

    C# 2023年5月15日
    00
  • C#判断文件路径是否存在或者判断文件是否存在的方法

    C#中判断文件路径是否存在或者判断文件是否存在的方法,可以通过以下两种方式实现: 判断文件路径是否存在 if(Directory.Exists("D:\\exampleFolder")){ Console.WriteLine("文件夹存在"); }else{ Console.WriteLine("文件夹不存在…

    C# 2023年6月1日
    00
  • C#写一套最全的MySQL帮助类(包括增删改查)

    介绍说明:这个帮助类包含了六个主要的方法:ExecuteNonQuery、ExecuteScalar、ExecuteQuery、ExecuteQuery(泛型)、Insert、Update和Delete。其中,ExecuteNonQuery用于执行不返回结果集的SQL语句;ExecuteScalar用于执行一个查询,并返回结果集中第一行的第一列;Execut…

    C# 2023年4月22日
    00
  • C# Main方法的传入参数研究

    C# Main方法的传入参数研究 什么是Main方法 在C#语言中,Main方法是程序的入口点。当程序启动时,将会首先执行Main方法。 Main方法通常定义在最高级别的类中,并且是一个静态方法。其语法如下: static void Main(string[] args) { } 其中,string[] args参数用于接收命令行参数。下面我们将详细说明如何…

    C# 2023年6月7日
    00
  • 常用C#关键字详解教程(比较全面)

    常用C#关键字详解教程 C#是一种现代的、对象导向的编程语言,用于.NET平台。在C#中有许多关键字,这些关键字用于定义变量、控制流程、类或结构、枚举等。下面我们将详细讲解C#中常用的关键字。 变量定义相关关键字 var var用于在编译期间推断变量类型。它指示编译器基于初始化表达式计算左侧变量的类型。例如: var str = "hello wo…

    C# 2023年5月15日
    00
  • C# 透明窗体制作实现方法比较分析

    C#中透明窗体的制作实现方法比较有不同的方式,本攻略将分别介绍三种用于制作透明窗体的方法,并分析比较它们的优缺点。 方式一:使用 Form 的 Opacity 属性 使用该方法,制作出的透明窗体是基于整个窗体的透明度来实现的,可使用 Form 的 Opacity 属性来设置窗体的透明程度,取值范围是0-1之间。 private void Form1_Load…

    C# 2023年6月6日
    00
合作推广
合作推广
分享本页
返回顶部