SqlTransactionalOutbox.Common
2.0.1
dotnet add package SqlTransactionalOutbox.Common --version 2.0.1
NuGet\Install-Package SqlTransactionalOutbox.Common -Version 2.0.1
<PackageReference Include="SqlTransactionalOutbox.Common" Version="2.0.1" />
<PackageVersion Include="SqlTransactionalOutbox.Common" Version="2.0.1" />
<PackageReference Include="SqlTransactionalOutbox.Common" />
paket add SqlTransactionalOutbox.Common --version 2.0.1
#r "nuget: SqlTransactionalOutbox.Common, 2.0.1"
#:package SqlTransactionalOutbox.Common@2.0.1
#addin nuget:?package=SqlTransactionalOutbox.Common&version=2.0.1
#tool nuget:?package=SqlTransactionalOutbox.Common&version=2.0.1
The Common interfaces and base/shared components for the SqlTransactionalOutbox framework.
A lightweight library & framework for implementing the Transactional Outbox pattern in .Net with default implementaions for SQL Server & messaging via Azure Service Bus. Some of the key benefits offered are support for running in serverless environments (e.g. AzureFunctions) or in standard hosted .Net applications (via asynchronous background 'worker threads'), and support for enforcing true FIFO processing to preserve ordering, scheduled events for future delivery, and simplified abstractions for the Outbox, Outbox Processing, and Messaging systems utilized.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
-
net8.0
- SystemTextJsonHelpers (>= 1.3.1)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on SqlTransactionalOutbox.Common:
| Package | Downloads |
|---|---|
|
SqlTransactionalOutbox.SqlServer.Common
The Common interfaces and base/shared components for the SqlServer outbox implementation of SqlTransactionalOutbox framework. A lightweight library & framework for implementing the Transactional Outbox pattern in .Net with default implementaions for SQL Server & messaging via Azure Service Bus. Some of the key benefits offered are support for running in serverless environments (e.g. AzureFunctions) or in standard hosted .Net applications (via asynchronous background 'worker threads'), and support for enforcing true FIFO processing to preserve ordering, scheduled events for future delivery, and simplified abstractions for the Outbox, Outbox Processing, and Messaging systems utilized. |
|
|
SqlTransactionalOutbox.SqlServer.MicrosoftDataNS
The SQL Server outbox implementation of SqlTransactionalOutbox framework using the new Microsoft.Data.SqlClient libraries. A lightweight library & framework for implementing the Transactional Outbox pattern in .Net with default implementaions for SQL Server & messaging via Azure Service Bus. Some of the key benefits offered are support for running in serverless environments (e.g. AzureFunctions) or in standard hosted .Net applications (via asynchronous background 'worker threads'), and support for enforcing true FIFO processing to preserve ordering, scheduled events for future delivery, and simplified abstractions for the Outbox, Outbox Processing, and Messaging systems utilized. |
|
|
SqlTransactionalOutbox.AzureServiceBus
The Azure Service Bus publishing/messaging & receiving implementation of the SqlTransactionalOutbox framework. A lightweight library & framework for implementing the Transactional Outbox pattern in .Net with default implementaions for SQL Server & messaging via Azure Service Bus. Some of the key benefits offered are support for running in serverless environments (e.g. AzureFunctions) or in standard hosted .Net applications (via asynchronous background 'worker threads'), and support for enforcing true FIFO processing to preserve ordering, scheduled events for future delivery, and simplified abstractions for the Outbox, Outbox Processing, and Messaging systems utilized. |
|
|
SqlTransactionalOutbox.SqlServer.SystemDataNS
The SQL Server outbox implementation of SqlTransactionalOutbox framework using legacy System.Data.SqlClient libraries. A lightweight library & framework for implementing the Transactional Outbox pattern in .Net with default implementaions for SQL Server & messaging via Azure Service Bus. Some of the key benefits offered are support for running in serverless environments (e.g. AzureFunctions) or in standard hosted .Net applications (via asynchronous background 'worker threads'), and support for enforcing true FIFO processing to preserve ordering, scheduled events for future delivery, and simplified abstractions for the Outbox, Outbox Processing, and Messaging systems utilized. |
GitHub repositories
This package is not used by any popular GitHub repositories.
V2.0 Release Notes:
- Fix Bug where missing outbox-item-scheduled-publish-date-utc in the Message would result in exceptions; it should be optional.
- Breaking Change: Completely removed support for System.Data.SqlClient in favor of only supporting Microsoft.Data.SqlClient going forward -- especially since Microsoft has fully decprecated System.Data.SqlClient.
- Breaking Change: JSON serialization is now fully migrated to System.Text.Json as it is the recommended and modern JSON library for .Net; and also to eliminate the dependency on Newtonsoft.Json.
- Breaking Change: Migrated to .Net 8+ support only -- this along with the above also bring along with them additional performance improvements and better support as .Net 6 is no longer supported by Microsoft.
- Improved System.Text.Json support and flexibility with the help of SystemTextJsonHelpers that provides more relaxe JSON parsing, serialization, and global configuration options.
- Improved SqlTransactionalOutboxInitializer and cconfiguration APIs -- now supports more flexible configuration of the Outbox as well as the Default JsonSerializerOptions used by extension methods.
Prior Release Notes:
- New support for scheduled publishing of Events from the Outbox for publishing/delivery at any time in the future.
- Significant updates to the Sample Apps have been added and fully illustrate the new Scheduled delivery feature.
- Azure Functions Sample App has been fully migrated to the `isolated process` model; as the legacy `in-process` model is deprecated.
- Implemented new SQL reader performance improvements and safety for handling NULL values.
- Fixed AsyncThreadOutboxProcessingAgent to correctly implement distributed locking by default as a best practice; with parameters to support disabling and customizing the lock name.
- Add full support for CancellationToken throughout the API as it was missing!
- Various code cleanup, Json parsing fixes (to now support DateTime), and stability improvements.
- Most are non-breaking changes and optional additions.
- Update dependencies to resolve issues with Vulnerabilities and Deprecated versions.
- Improved support for customizing OutboxTable Configuration and Distributed Mutex Lock settings via SqlTransactionalOutboxInitializer.Configure() initialization.
- (Breaking Changes) Fully migrated to Azure.Messaging.ServiceBus SDK/Library for future support; other AzureServiceBus libraries are all fully deprecated by Microsoft.
- The main breaking change is now the use of ServiceBusReceivedMessage vs deprecated Message object.
- All Interfaces and the genearl abstraction are still valid so code updates are straightforward.
- This now enables Azure Functions v4 (with .Net 6) to work as expected with AzureServiceBus bindings (requires ServiceBusReceivedMessage).
- Also fixed several bugs/issues, and optimized Options and Naming which may also have some small Breaking Changes.
- Improved Error Handling when Processing of Outbox has unexpected Exceptions.
- Also added a new Default implementation for AsyncThreadOutboxProcessingAgent (to run the Processing in an async Thread; ideal for AspNet Applications).
- Improved Json serialization to eliminate unnecessary storing of Null properties and consistently use camelCase Json.
- Added full Console Sample Application (in Github Source) that provides Demo of the full lifecycle of the Sql Transactional Outbox.
- Add Convenience Method for PayloadBuilder.FromObject().
- Add lazy loaded convenience property ParsedBody to OutboxReceivedItem.
- Initial BETA release for core interfaces and shared components; supports default implementations of SQL Server transactional outbox & Azure Service Bus publishing.