【发布时间】:2020-04-22 17:24:55
【问题描述】:
我正在尝试使用 MailKit 库在 Xamarin.Forms 中发送电子邮件。但是,当执行到达 ConnectAsync() 方法时,我收到以下异常:
System.MissingMethodException: string[] string.Split(char,System.StringSplitOptions) 发生
有没有人遇到过这种情况。我不知道有任何缺失的方法。
以下是我在 .net 标准项目中的代码:
using MailKit.Net.Smtp;
using MimeKit;
using MimeKit.Text;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Threading.Tasks;
public async Task SendAsync(EmailMessage emailMessage)
{
try
{
var message = new MimeMessage();
message.To.Add(new MailboxAddress("Recipient", "xamapp@icloud.com"));
message.From.Add(new MailboxAddress("Sender", "xamapp.no.reply@gmail.com"));
message.Subject = "Test!!";
message.Body = new TextPart(TextFormat.Html)
{
Text = "Test message"
};
using (var emailClient = new SmtpClient())
{
await emailClient.ConnectAsync("smtp.gmail.com", 465, true);
emailClient.AuthenticationMechanisms.Remove("XOAUTH2");
await emailClient.AuthenticateAsync("username", "password");
await emailClient.SendAsync(message);
emailClient.Disconnect(true);
}
}
catch (SmtpCommandException ex)
{
Debug.WriteLine($"Error sending email: {ex.Message}");
Debug.WriteLine($"StatusCode: {ex.StatusCode}");
}
catch (SmtpProtocolException ex)
{
Debug.WriteLine($"Protocol error while sending email: {ex.Message}");
}
}
【问题讨论】:
标签: xamarin.forms mailkit