You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C# Web API中配置info@*****.com账户发邮件?代码排查

你的C# SMTP配置代码里的问题及修正方案

让我帮你梳理下这段代码里存在的几个关键问题,以及对应的修正方法:

存在的错误点

  • 端口与SSL配置不匹配:你开启了EnableSsl = true但使用了25端口——绝大多数邮件服务商的SSL加密端口是465(SSL直连)或587(STARTTLS加密),25端口通常用于非加密传输或需要手动切换STARTTLS,直接搭配EnableSsl=true会导致连接失败。
  • 凭据设置错误:UseDefaultCredentials = true会让程序使用当前运行进程的系统账户凭据,而不是你想要的info@*****.com账户。要指定目标邮箱,必须显式设置专属凭据。
  • SmtpClient过时警告:.NET Framework中的SmtpClient已被标记为过时,.NET Core/.NET 5+版本官方更推荐使用功能更完善的第三方库(比如MailKit)。

修正后的原生SmtpClient代码

如果坚持使用原生类库,可以这样调整:

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

// 初始化SMTP客户端
var smtpClient = new SmtpClient
{
    Host = "173.***.**.**",
    // 替换为对应服务商的SSL端口,比如587或465
    Port = 587,
    DeliveryMethod = SmtpDeliveryMethod.Network,
    // 必须先设为false,再设置自定义凭据
    UseDefaultCredentials = false,
    // 填入你的邮箱账户和密码(如果是第三方邮箱,可能需要用应用专用密码)
    Credentials = new NetworkCredential("info@*****.com", "你的邮箱密码"),
    EnableSsl = true
};

// 构建邮件内容
var mail = new MailMessage
{
    From = new MailAddress("info@*****.com"),
    Subject = "测试邮件",
    Body = "这是通过配置好的账户发送的测试邮件"
};
mail.To.Add("目标收件人邮箱");

// 发送邮件
try
{
    smtpClient.Send(mail);
    Console.WriteLine("邮件发送成功!");
}
catch (Exception ex)
{
    Console.WriteLine($"发送失败:{ex.Message}");
}

更推荐的.NET 6+方案:使用MailKit

因为原生SmtpClient已过时,MailKit是官方推荐的替代方案,稳定性和兼容性更好。先通过NuGet安装MailKit包,然后使用以下代码:

using MailKit.Net.Smtp;
using MimeKit;

// 构建MIME邮件
var message = new MimeMessage();
message.From.Add(new MailboxAddress("发件人名称", "info@*****.com"));
message.To.Add(new MailboxAddress("收件人名称", "目标收件人邮箱"));
message.Subject = "测试邮件";

message.Body = new TextPart("plain")
{
    Text = "这是用MailKit发送的测试邮件"
};

// 发送邮件
using (var client = new SmtpClient())
{
    // 连接到SMTP服务器,最后一个参数表示启用SSL
    client.Connect("173.***.**.**", 587, true);
    // 验证邮箱账户
    client.Authenticate("info@*****.com", "你的邮箱密码");
    // 发送邮件
    client.Send(message);
    // 断开连接
    client.Disconnect(true);
}

内容的提问来源于stack exchange,提问作者bhavsar japan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:19:40