Pular para o conteúdo principal
Versão: main (dev) 🚧

ITLab.Template.DevPack.Enums

Hosts shared enum contracts used across notifications, authentication, hub communication, ordering and storage.

Componentes

TipoNomeResponsabilidade
EnumEAuthenticationTypeIdentifies the authentication mechanism: Console, ApiClient, Basic
EnumEHubMethodSupported hub methods for real-time SignalR operations
EnumENotificationDeliveryMethodDelivery channel for notifications: Push, Email, MicrosoftTeams, Slack
EnumENotificationFormatOutput format supported by notification providers
EnumENotificationTypeNotification semantic category (Alert, Info, Warning, etc.)
EnumEOrderStatusLifecycle stages of a commercial order: Draft, Cancelled, Invoiced, Shipped, Delivered
EnumERecipientTypeScope of notification recipients: All, Specific
EnumESenderToolEmail dispatch backend: Disk (dev), Smtp, SendGrid
EnumEStorageProviderStorage backend selection

Como usar

// Provider and format are explicit to avoid implicit behavior.
var payload = new SendNotificationCommand
{
Type = ENotificationType.Alert,
Format = ENotificationFormat.Html,
DeliveryMethod = ENotificationDeliveryMethod.Email,
RecipientType = ERecipientType.Specific
};

// Sender tool is selected from configuration.
var tool = configuration.GetValue<ESenderTool>("Email:SenderTool");

O que não fazer

  • Do not overload enum members with product-specific meanings.
  • Do not persist enum numeric values externally without a versioning strategy.

Extensão pelo produto

  • Products can add new enum members when a new shared capability is adopted by all consumers.
  • Product-specific enums should live outside DevPack when only one bounded context needs them.