Browse Source

fix(platform): The email system automatically resolves the recipient

pull/1282/head
colin 8 months ago
parent
commit
ed5f1ff6e6
  1. 21
      aspnet-core/modules/platform/LINGYUN.Platform.Domain/LINGYUN/Platform/Messages/EmailMessageManager.cs

21
aspnet-core/modules/platform/LINGYUN.Platform.Domain/LINGYUN/Platform/Messages/EmailMessageManager.cs

@ -1,6 +1,7 @@
using Microsoft.Extensions.Logging;
using System;
using System.IO;
using System.Net;
using System.Net.Mail;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
@ -65,24 +66,19 @@ public class EmailMessageManager : DomainService, IEmailMessageManager
else
{
var match = Regex.Match(message.From, FromAddressPattern);
if (match.Success)
{
from = new MailAddress(match.Value);
}
else
{
from = new MailAddress(message.From);
}
from = match.Success ? new MailAddress(match.Value) : new MailAddress(message.From);
}
var to = new MailAddress(message.Receiver);
var mailMessage = new MailMessage(from, to)
var mailMessage = new MailMessage
{
From = from,
Subject = message.Subject,
Body = message.Content,
IsBodyHtml = message.IsBodyHtml,
};
mailMessage.To.Add(message.Receiver);
if (!message.CC.IsNullOrWhiteSpace())
{
mailMessage.CC.Add(message.CC);
@ -103,7 +99,8 @@ public class EmailMessageManager : DomainService, IEmailMessageManager
foreach (var header in message.Headers)
{
mailMessage.Headers.Add(header.Key, header.Value);
var sanitizedValue = header.Value?.Replace(",", "") ?? "";
mailMessage.Headers.Add(header.Key, sanitizedValue);
}
foreach (var attachment in message.Attachments)
@ -119,7 +116,7 @@ public class EmailMessageManager : DomainService, IEmailMessageManager
return null;
}
catch(Exception ex)
catch (Exception ex)
{
Logger.LogWarning("Failed to send a email message, error: {message}", ex.ToString());

Loading…
Cancel
Save