Skip to content

Commit

Permalink
make System.Net.Mail Importance/X-Priority header values simpler and …
Browse files Browse the repository at this point in the history
…more correct (lower-case)
  • Loading branch information
Sören Kuklau authored and Sören Kuklau committed Oct 14, 2024
1 parent deef396 commit 2298da0
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 11 deletions.
19 changes: 19 additions & 0 deletions TRENZ.Lib.RazorMail.Core/Models/MailImportance.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,22 @@ public enum MailImportance
Normal = 3,
Low = 5
}

public static class MailImportanceExtensions
{
public static string ToImportanceHeaderValue(this MailImportance importance)
=> importance switch
{
MailImportance.High => "high",
MailImportance.Low => "low",
_ => "normal",
};

public static string ToXPriorityHeaderValue(this MailImportance importance)
=> importance switch
{
MailImportance.High => "2",
MailImportance.Low => "4",
_ => "3",
};
}
Original file line number Diff line number Diff line change
Expand Up @@ -49,18 +49,9 @@ private static void SetMailHeaders(RazorMailMessage razorMessage, SystemNetMailM
foreach (var item in razorMessage.Headers.ReplyTo)
systemNetMessage.ReplyToList.Add(item.ToMailAddress());

systemNetMessage.Headers["Importance"] = razorMessage.Headers.Importance switch
{
MailImportance.Low or MailImportance.High => razorMessage.Headers.Importance.ToString(),
_ => MailImportance.Normal.ToString()
};
systemNetMessage.Headers["Importance"] = razorMessage.Headers.Importance.ToImportanceHeaderValue();

systemNetMessage.Headers["X-Priority"] = razorMessage.Headers.Importance switch
{
MailImportance.Low => "4",
MailImportance.High => "2",
_ => "3"
};
systemNetMessage.Headers["X-Priority"] = razorMessage.Headers.Importance.ToXPriorityHeaderValue();

foreach (var (name, value) in razorMessage.Headers.NonSpecificHandledHeaders)
{
Expand Down

0 comments on commit 2298da0

Please sign in to comment.