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

C#使用Office 365发送邮件出现5.7.57错误问题咨询

报错原因

你遇到的5.7.139错误是Office 365租户默认禁用了SMTP身份验证(SMTP AUTH)功能导致的,同时.NET官方已经标记SmtpClient类为过时类型,不推荐在生产环境使用。

解决方法

方案1:启用SMTP AUTH(仅适合测试场景,生产不推荐)

该方案可以兼容你现有的SmtpClient代码,操作步骤如下:

  • 登录Microsoft 365管理中心,进入Exchange管理中心
  • 依次选择「收件人」>「邮箱」,找到发件账号admin@xxxxxxxx.in
  • 进入账号详情页,点击「邮件」选项卡,找到「电子邮件应用」板块的「管理电子邮件应用」
  • 勾选「经过身份验证的SMTP」选项后保存配置
  • 你也可以通过Exchange Online PowerShell命令单独给该账号开启权限:Set-CASMailbox -Identity admin@xxxxxxxx.in -SmtpClientAuthenticationDisabled $false
  • 注意:Office 365 SMTP服务仅支持587端口配合STARTTLS使用,你代码中的465端口并不被官方支持,需要修改代码为client.Port = 587;

方案2:使用Microsoft Graph API发邮件(生产环境首选)

这是微软官方推荐的邮件发送方案,无需开启SMTP AUTH,安全性和稳定性更高,操作步骤如下:

  • 在Azure Active Directory中注册应用,为应用授予Mail.Send的API权限(可根据业务场景选择委托权限或应用权限),完成权限授予后获取租户ID、应用客户端ID、客户端密钥
  • 安装NuGet依赖包:Microsoft.Graph、Azure.Identity
  • 参考如下示例代码实现邮件发送:
using Azure.Identity;
using Microsoft.Graph;
using Microsoft.Graph.Models;
using Microsoft.Graph.Users.Item.SendMail;

// 初始化Graph服务客户端
var scopes = new[] { "https://graph.microsoft.com/.default" };
var tenantId = "你的Azure AD租户ID";
var clientId = "你注册的应用客户端ID";
var clientSecret = "你注册的应用客户端密钥";

var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
var graphClient = new GraphServiceClient(credential, scopes);

// 构造邮件内容
var message = new Message
{
    Subject = "Test Subject",
    Body = new ItemBody
    {
        ContentType = BodyType.Html,
        Content = "Testing Office365 Email"
    },
    ToRecipients = new List<Recipient>
    {
        new Recipient
        {
            EmailAddress = new EmailAddress
            {
                Address = "sales@xxxxxxxx.in"
            }
        }
    }
};

// 发送邮件
var sendRequest = new SendMailPostRequestBody
{
    Message = message,
    SaveToSentItems = true
};
await graphClient.Users["admin@xxxxxxxx.in"].SendMail.PostAsync(sendRequest);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 21:15:03