Skip to content

⭐ IntegrationEventLogEF

Terrence Daniels edited this page Aug 15, 2026 · 2 revisions

In progress. .csproj, EventState.cs, GlobalUsings.cs, IntegrationEventLogEntry.cs, and IntegrationLogExtensions.cs added and reviewed (5 of 7 source files); Services/IntegrationEventLogService.cs and Utilities/ResilientTransaction.cs remain.

IntegrationEventLogEF is the EF Core-backed transactional outbox for integration events — persisted alongside the business write in the same database transaction, then published separately. A few notable findings so far:

  • EventStateEnum renamed to EventState — Microsoft's own .NET naming guidelines say not to suffix enum type names with Enum, a guideline this file violated in Microsoft's own sample.
  • Nullable-annotation gaps closed with required/init properties rather than = null! suppression; IntegrationEvent retyped nullable after finding the exact as-cast-can-return-null bug already fixed once in RabbitMQEventBus.DeserializeMessage — recurring here.
  • A repo-wide unused-using audit (triggered by a premature System.Reflection import in this project's own GlobalUsings.cs) found and fixed real dead imports in two already-"Done" projects (EventBus, eShop.ServiceDefaults) too.

Full detail and commit hashes in todo.md's IntegrationEventLogEF section.

Clone this wiki locally