PatternID,PatternName,Category,Frequency,Complexity,Examples,Guidelines,Status P001,ILogic Interface Pattern,Architecture,Very High,Medium,IAccountsLogic-BLAccountsLogic-WSAccountsLogic,Use dual BL/WS implementation for all data access,Active P002,Result Error Handling,Error Handling,Very High,Low,"Task> GetAccountAsync()","Always return Result or Task>",Active P003,ClassContainer Dependency Injection,Dependency Injection,Very High,Medium,"ClassContainer.Instance.WithInstance((ILogic logic) => ...)","Use for all service resolution and disposal",Active P004,BL/WS Dual Implementation,Architecture,Very High,High,BLAccountsLogic vs WSAccountsLogic,Implement both database and web service access,Active P005,DTO Entity Conversion,Data Transformation,Very High,Medium,"ConvertAccountDeviceDTOToAccountDevice()","Convert between entities and DTOs at service boundaries",Active P006,MVVM BindableBase Pattern,UI Architecture,Very High,Medium,ViewModel : BindableBase,All ViewModels inherit from BindableBase,Active P007,NHibernate Session Management,Data Access,Very High,High,"using (var session = new BLSession())","Manage NHibernate sessions in using statements",Active P008,Guard Validation Pattern,Validation,High,Low,"Guard.NotNull(parameter, ""parameter"")","Validate all method parameters with Guard clauses",Active P009,Async Task ConfigureAwait,Performance,High,Low,"await method().ConfigureAwait(false)","Use ConfigureAwait(false) for library code",Active P010,External API Client Pattern,Integration,Medium,High,FinApiClient : RestClientBase,Inherit from RestClientBase for external APIs,Active P011,AppModuleController Registration,UI Module Management,High,Medium,ICentronAppModuleController implementation,Register all UI modules with rights and features,Active P012,Ribbon Interface Pattern,UI Navigation,Medium,Medium,IRibbonControlModule implementation,Implement ribbon interfaces for UI integration,Active P013,Request/Response DTO Pattern,Web Service,Very High,Medium,SearchAccountsThroughPagingRequest,Use typed request/response objects for web services,Active P014,Cache Update Service Pattern,Performance,Low,High,CacheUpdateService with background execution,Implement background services for cache management,Active P015,Authentication Attribute Pattern,Security,High,Low,[Authenticate] on web service methods,Apply authentication attributes to all protected endpoints,Active P016,Localization Resource Pattern,Internationalization,High,Medium,"LocalizedStrings.resx, LocalizedStrings.en.resx","Support German primary with English fallback",Active P017,Database Script Versioning,Data Migration,High,High,"ScriptMethod{number}.cs with ApplicationVersion","Version all database changes with sequential scripts",Active P018,User Rights Constant Pattern,Security,High,Medium,"UserRightsConst.Sales.Customer.SHOW_*","Organize user rights in hierarchical constants",Active P019,Settings Management Pattern,Configuration,High,Medium,"ApplicationSettings table vs legacy Stammdat","Use ApplicationSettings for new settings only",Active P020,Entity Validation Pattern,Business Logic,High,Medium,Entity property validation in BL classes,Implement business rule validation in entity classes,Active P021,Audit Trail Pattern,Data Security,Medium,Medium,"CreatedByI3D, ChangedByI3D, DeletedByI3D columns","Include audit columns in all business tables",Active P022,Soft Delete Pattern,Data Management,High,Low,"IsDeleted, DeletedDate, DeletedByI3D","Use soft deletes instead of hard deletes",Active P023,Background Service Pattern,Performance,Medium,High,ManagedBackgroundService base class,Inherit from ManagedBackgroundService for background tasks,Active P024,JSON Web Token Pattern,Security,Medium,Medium,JWT token management in external APIs,Use JWT for external API authentication,Active P025,Circuit Breaker Pattern,Integration,Low,High,Error handling with retry logic,Implement circuit breakers for external service calls,Active P026,Repository Pattern,Data Access,High,High,"EntityBL classes with DAO access","Implement repository pattern through BL classes",Active P027,Unit of Work Pattern,Data Access,High,High,BLSession manages NHibernate session,Use BLSession for transaction boundaries,Active P028,Observer Pattern,UI Updates,Medium,Medium,INotifyPropertyChanged implementation,Use for UI data binding and change notifications,Active P029,Command Pattern,UI Actions,High,Medium,DelegateCommand implementations,Use commands for UI actions and button bindings,Active P030,Factory Pattern,Object Creation,Medium,Medium,"WebServiceBL creates base BL instances","Use factories for complex object creation",Active P031,Decorator Pattern,Cross-cutting Concerns,Medium,Medium,WebServiceBL decorates base BL with DTO conversion,Use for adding behavior to existing classes,Active P032,Template Method Pattern,Code Reuse,Medium,Medium,Base BL classes with virtual methods,Define algorithm structure in base classes,Active P033,Strategy Pattern,Conditional Logic,Medium,High,Different authentication strategies,Use for varying algorithms or business rules,Active P034,Facade Pattern,System Integration,High,High,CentronRestService as API facade,Provide simplified interface to complex subsystems,Active P035,Proxy Pattern,Remote Access,High,High,WS Logic classes proxy to web services,Use for remote service access and caching,Active