Introduced a new project, `DigitalData.MessagingService.Publisher.Abstraction`, to encapsulate the `OutgoingEmailEvent` class and `IOutgoingEmailPublisher` interface. The project targets multiple frameworks (`net462`, `net480`, `net8.0`) and enables nullable reference types and the latest C# language version. Moved `OutgoingEmailEvent` and `IOutgoingEmailPublisher` to the new project, updating their namespaces and replacing `required` properties with mutable ones in `OutgoingEmailEvent`. Updated all dependent files to reference the new namespace. Updated the solution file to include the new project and adjusted build configurations. Cleaned up unused `using` directives and removed redundant `LangVersion` property in the new project file.
30 lines
668 B
C#
30 lines
668 B
C#
using System;
|
|
|
|
namespace DigitalData.MessagingService.Publisher.Abstraction;
|
|
|
|
public class OutgoingEmailEvent
|
|
{
|
|
public Guid Id { get; set; }
|
|
|
|
/// <summary>
|
|
/// Recipient email address
|
|
/// </summary>
|
|
public string Recipient { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
/// Email subject
|
|
/// </summary>
|
|
public string Subject { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
/// Email body (HTML or plain text)
|
|
/// </summary>
|
|
public string Body { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
/// Is HTML email (default: true)
|
|
/// </summary>
|
|
public bool IsHtml { get; set; } = true;
|
|
|
|
public DateTime QueuedAt { get; set; }
|
|
} |