b64f71f7ec
4-слойная архитектура (Api/Application/Domain/Infrastructure) на .NET 10 с MediatR и EF Core + PostgreSQL, без бизнес-логики. Добавлены docker-compose, .env.example и README для локального запуска.
36 lines
1.4 KiB
Markdown
36 lines
1.4 KiB
Markdown
# Tnsu.ApprovalRoute
|
|
|
|
Каркас проекта на .NET 10, повторяющий архитектуру [tnsu-inventory](../tnsu-inventory): 4 слоя (Api / Application / Domain / Infrastructure), MediatR, EF Core + PostgreSQL. Бизнес-логика не реализована — только структура решения и минимальная точка входа.
|
|
|
|
## Структура
|
|
|
|
```
|
|
backend/
|
|
Directory.Build.props # общие настройки таргета (net10.0, nullable, etc.)
|
|
Directory.Packages.props # централизованные версии пакетов
|
|
Tnsu.ApprovalRoute.sln
|
|
src/
|
|
Tnsu.ApprovalRoute.Domain/ # сущности домена (пусто)
|
|
Tnsu.ApprovalRoute.Application/ # MediatR-хендлеры, DI-регистрация слоя
|
|
Tnsu.ApprovalRoute.Infrastructure/ # EF Core DbContext, DI-регистрация слоя
|
|
Tnsu.ApprovalRoute.Api/ # ASP.NET Core Minimal API, Program.cs
|
|
```
|
|
|
|
## Запуск локально
|
|
|
|
```bash
|
|
cd backend
|
|
dotnet run --project src/Tnsu.ApprovalRoute.Api
|
|
```
|
|
|
|
Требуется PostgreSQL (строка подключения — `ConnectionStrings:Postgres` в `appsettings.json`).
|
|
|
|
## Запуск через Docker Compose
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
docker compose up --build
|
|
```
|
|
|
|
Поднимает `postgres` и `api` (health-check на `/health`).
|