Kck.Messaging.Abstractions
3.4.0
dotnet add package Kck.Messaging.Abstractions --version 3.4.0
NuGet\Install-Package Kck.Messaging.Abstractions -Version 3.4.0
<PackageReference Include="Kck.Messaging.Abstractions" Version="3.4.0" />
<PackageVersion Include="Kck.Messaging.Abstractions" Version="3.4.0" />
<PackageReference Include="Kck.Messaging.Abstractions" />
paket add Kck.Messaging.Abstractions --version 3.4.0
#r "nuget: Kck.Messaging.Abstractions, 3.4.0"
#:package Kck.Messaging.Abstractions@3.4.0
#addin nuget:?package=Kck.Messaging.Abstractions&version=3.4.0
#tool nuget:?package=Kck.Messaging.Abstractions&version=3.4.0
Kck.Messaging.Abstractions
Email messaging abstractions for transactional email delivery — IEmailService with EmailMessage, EmailRecipient, and EmailAttachment models compatible with MailKit, SendGrid, or Amazon SES.
Installation
dotnet add package Kck.Messaging.Abstractions
Quick Start
// Program.cs — register a concrete provider (e.g. Kck.Messaging.MailKit)
builder.Services.AddKckMailKitEmail(builder.Configuration);
// Use IEmailService in a handler
public class OrderConfirmationHandler(IEmailService email)
{
public async Task SendConfirmationAsync(Order order, CancellationToken ct)
{
var message = new EmailMessage
{
To = [new EmailRecipient(order.CustomerEmail, order.CustomerName)],
Subject = $"Order #{order.Id} Confirmed",
Body = $"<h1>Thank you!</h1><p>Your order total: {order.Total:C}</p>",
IsHtml = true,
Attachments =
[
new EmailAttachment
{
FileName = "invoice.pdf",
Content = await GenerateInvoiceAsync(order, ct),
ContentType = "application/pdf"
}
]
};
await email.SendAsync(message, ct);
}
}
Configuration
| Property | Description | Default |
|---|---|---|
Messaging:Email:Host |
SMTP host or provider endpoint | — |
Messaging:Email:Port |
SMTP port | 587 |
Messaging:Email:FromAddress |
Default sender address | — |
Messaging:Email:FromName |
Default sender display name | — |
Resources
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
NuGet packages (4)
Showing the top 4 NuGet packages that depend on Kck.Messaging.Abstractions:
| Package | Downloads |
|---|---|
|
Kck.Bundle.WebApi
Opinionated ASP.NET Core WebAPI starter pack. Registers Serilog, in-memory caching, JWT auth, Argon2 hashing, InMemory event bus, OpenTelemetry, rate limiting, security headers, CORS, and global exception handling in a single AddKckWebApiDefaults() call. |
|
|
Kck.Messaging.AmazonSes
Amazon Simple Email Service v2-backed IEmailProvider. Supports explicit AWS credentials or IAM role authentication with SES v2 BulkEmail API for high-volume sending. Registered via AddKckMessagingAmazonSes(). |
|
|
Kck.Messaging.MailKit
MailKit-backed IEmailProvider for SMTP email delivery with connection pooling (SmtpConnectionPool). Supports SSL/TLS, STARTTLS, and configurable pool size. Registered via AddKckMessagingMailKit(). |
|
|
Kck.Messaging.SendGrid
Twilio SendGrid-backed IEmailProvider for transactional email. Supports HTML/plain-text bodies, attachments, and multiple recipients via SendGrid's v3 Mail API. Registered via AddKckMessagingSendGrid(). |
GitHub repositories
This package is not used by any popular GitHub repositories.