Quick Reference Card

AUA Framework Developer Cheat Sheet

Essential naming conventions, interfaces, base classes, and workflow checklists for rapid development in AUA Framework.

1. Class Suffixes & Object Scope Convention Matrix
Vm Presentation

ViewModel

HTTP request payload passed into API Controller actions (e.g. PersonInsertVm).

Dm Services

Data Model

Encapsulates multi-parameter inputs inside business services (e.g. ChangeStatusPersonDm).

Dto Application

Data Transfer Object

Read-only mapped projection for API responses and client output (e.g. PersonDto).

Config Infrastructure

Entity Configuration

EF Core Fluent API mappings and DB constraints (e.g. PersonConfig).

2. Entity Inheritance & Audit Contracts Core Layer
// 1. Standard Domain Entity with ID Type
public class Product : DomainEntity<long> { ... }

// 2. Creation Auditing (Auto tracks CreatorUserId)
public class Product : DomainEntity<long>, ICreationAudited { ... }

// 3. Soft Delete Auditing (Auto tracks DeleterUserId, DeleteDate, IsDeleted)
public class Product : DomainEntity<long>, IDeletionAudited { ... }

// 4. Full Audit Trail Entity
public class Product : DomainEntity<long>, ICreationAudited, IDeletionAudited { ... }
3. Essential AUA Base Classes Framework Inheritance
BaseApiController

Inherit all REST Controllers from this class to return standardized API responses (SuccessResult()).

GenericService<T, TKey>

Provides out-of-the-box repository access, Async CRUD execution, and UnitOfWork contexts.

BaseDto<TEntity, TKey>

Base class for DTOs. Implement IHaveCustomMappings for complex AutoMapper projections.

4. New Feature/Module Checklist Step-by-Step Flow
1
Domain Entity Creation Create Entity in 01.Domain inheriting from DomainEntity<TKey>.
2
EF Core Fluent Configuration Configure string lengths & soft-delete query filters in 02.Infrastructure.
3
DTO & AutoMapper Setup Create [Module]Dto inheriting BaseDto and define mapping rules.
4
ViewModels & DataModels Define [Module]InsertVm for API inputs and [Module]Dm for multi-param services.
5
Service Layer Implementation Build Service & Contract extending GenericService and write business rules.
6
API Controller & Swagger Test Add Controller inheriting BaseApiController, expose endpoints & test on Swagger.