Added standardized metadata blocks to the top of each project and repo documentation file. These blocks define project type, and for repos, include layer and dependencies, improving clarity and enabling better tooling support. |
||
|---|---|---|
| .. | ||
| Enums | ||
| Messages | ||
| Users | ||
| AcModelDtoBase.cs | ||
| AyCode.Models.csproj | ||
| README.md | ||
README.md
AyCode.Models
@project { type = "framework" }
Shared DTOs (Data Transfer Objects) and view models for the AyCode platform. Bridges entities and interfaces into client/server-transferable models.
Folder Structure
| Folder | Purpose |
|---|---|
Enums/ |
Message-related enums (content types, message types) |
Messages/ |
Email message model (currently inactive) |
Users/ |
User DTOs: minimal, standard, detail variants + password DTOs |
Root Files
AcModelDtoBase.cs— Abstract base DTO withGuid Id. Generic versionAcModelDtoBase<TMainEntity>addsCreateMainEntity()for DTO-to-entity instantiation via reflection.
Key Files
Enums/
MessageContentType.cs— Enum: Text, Image, Video, Audio, File, Location, Contact, Sticker, Gif, VoiceNote, System.MessageTypesEnum.cs— Enum: email(1), sms(2), push(3), chat(4).
Users/
AcUserModelDtoMinBase.cs— Minimal user DTO withUserDtoandProfileDto.CopyUserDtoValuesToUser()for reverse mapping.AcUserModelDtoBase.cs— Extends min base withServiceProvidersandUserToServiceProviderslists.AcUserModelDtoDetailBase.cs— Full detail DTO: populates email, phone, address, timestamps. Bidirectional mapping viaCopyUserDtoValuesToUser().AcPasswordDtoBase.cs— Base withNewPasswordproperty.AcChangePasswordDto.cs— Extends password base withUserId+OldPassword.AcForgotPasswordDto.cs— Extends password base withEmail.
Dependencies
| Dependency | Purpose |
|---|---|
AyCode.Core |
Core types |
AyCode.Entities |
Entity base classes for DTO-entity mapping |
AyCode.Interfaces |
Interface contracts implemented by DTOs |