AyCode.Core/AyCode.Database/DataLayers
Loretta 17daf0fef2 Document AcBinary wire format, sync docs, update conventions
- Add BINARY_FORMAT.md: full AcBinary wire format spec (markers, encoding, options, protocol, interactions)
- Reference BINARY_FORMAT.md from GLOSSARY.md, Binaries/README.md, and Serializers/Binaries/README.md; add new glossary terms
- Clarify and expand config options tables to match new doc
- Add/clarify LLM maintenance rules: always sync .md files with code, auto-fix discrepancies
- Update root README.md: AyCode.Core targets .NET 9, not 10; stress doc/code sync
- Add code reuse and doc sync conventions to copilot-instructions.md and CONVENTIONS.md
- Add docs/ folder and BINARY_FORMAT.md to solution as Solution Items
- Minor clarifications and cross-links in ARCHITECTURE.md and other docs
2026-03-29 09:11:57 +02:00
..
Users Document AcBinary wire format, sync docs, update conventions 2026-03-29 09:11:57 +02:00
AcDalBase.cs improvements, fixes, etc... 2024-06-30 15:34:19 +02:00
IAcDalBase.cs
PooledDal.cs improvements, fixes 2024-06-03 07:48:33 +02:00
README.md Document AcBinary wire format, sync docs, update conventions 2026-03-29 09:11:57 +02:00

README.md

DataLayers

Generic Data Access Layer (DAL) abstraction with mutex-protected session/transaction patterns and singleton DAL pooling.

Key Files

  • IAcDalBase.cs — Base interface: Name, Context access, Mutex lock, DbContext lifecycle.
  • AcDalBase.cs — Abstract implementation: Session/SessionAsync (reads), Transaction/TransactionAsync (writes), thread-safe Mutex, auto DbContext creation, model DTO conversion.
  • PooledDal.cs — Singleton DAL pool: concurrent dictionary by SessionId/PlayerId, GetDalById, CreateDal, Remove.

Subfolders

Folder Purpose
Users/ User-specific DAL with authentication and CRUD