Introduced `OutgoingEmailPublisher` for RabbitMQ-based email queueing with message persistence, scalability, and reliability. Added dependency injection support via `AddMessagingServicePublisher` extension method. Enhanced RabbitMQ topology setup with exchanges, queues, and Dead Letter Queues (DLQ). Updated `DigitalData.MessagingService.Publisher.csproj` and `DigitalData.MessagingService.RabbitMQ.csproj` to support `net462`, `net480`, and `net8.0`. Added project references and conditional package references for compatibility. Integrated logging with `Microsoft.Extensions.Logging` and used `System.Text.Json` for serialization. Implemented lazy initialization for RabbitMQ channels to improve performance.
20 lines
728 B
XML
20 lines
728 B
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
|
|
<PropertyGroup>
|
|
<TargetFrameworks>net462;net480;net8.0</TargetFrameworks>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<Nullable>enable</Nullable>
|
|
<LangVersion>latest</LangVersion>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework'">
|
|
<PackageReference Include="System.Text.Json" Version="10.0.10" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\..\core\DigitalData.MessagingService.Publisher.Abstraction\DigitalData.MessagingService.Publisher.Abstraction.csproj" />
|
|
<ProjectReference Include="..\DigitalData.MessagingService.RabbitMQ\DigitalData.MessagingService.RabbitMQ.csproj" />
|
|
</ItemGroup>
|
|
|
|
</Project>
|