Дополнение работы с документацией

This commit is contained in:
2025-06-01 20:38:43 +04:00
parent c9c92a2b54
commit b96bd2a224
81 changed files with 602 additions and 341 deletions
+5 -48
View File
@@ -13,57 +13,14 @@
- Перейдите а папку `Pf2eModel` (`cd ../Pf2eModel`) и запустите `dotnet ef database update` для создания структуры БД в командной строке. Если необходимо обновить структуру после изменения модели - используйте скрипт `RebuildDatabase.bat`.
- Запустите проект `Pf2eDataScrapper` для парсинга информации.
## Роли проектов
## Роли и документация проектов
- `Pf2eModel` - общая ORM-структура модели.
- `Pf2eDataScrapper` - загрузчик и обработчик данных.
- [`Pf2eModel`](Documentation/Pf2eModel/index.md) - общая ORM-структура модели.
- [`Pf2eDataScrapper`](Documentation/Pf2eDataScrapper/index.md) - загрузчик и обработчик данных.
## Общая структура
По ссылкам можно увидеть полную документацию классов.
### `Pf2eModel`
Набор классов модели ORM EntityFramework.
Класс-контекст `Pf2eDbContext` разделён на 2 файла:
- в `Pf2eDbContext.cs` находится набор таблиц и конфигурация БД,
- в `Pf2eDbContextModel.cs` находится Fluent API описание связей в модели.
Для удобства модель разбита на несколько папок-пространст имён:
- `Base` - здесь описан класс `Entity`, который является корнем всех связей и описаний. В этой таблице находятся общие характеристики объектов: название, описание, тип, а так же ссылки на общие элементы: указание источников и трейтов - всё это в пространстве имён
- `Common` содержит общее классы на которые могут ссылаться разные типа.
- `Enum` содержит описание всех перечислений, использующихся в модели.
- `Structure` содержит все основные типы, которые связаны 1-к-1 с `Entity` (для указания этого используется интерфейс `IEntity`).
#### `Migrations`
Миграции БД, генерируются в автомотическом режиме.
### `Pf2eDataScrapper`
Основной проект обработки и отображения данных.
Структура пространст имён:
- `Helpers` - классы-помощники, которые используются в
#### `SchemaBuilder`
Классы обработки вводимых JSON-данных и создание схемы данных для использовании при формировании обработчиков данных.
Использование:
```csharp
SchemaNode schema = new(); // Создание схемы данных
data = JObject.Parse(reader.ReadToEnd()); // Загрузка данных
schema.AddValue(data); // Добавление данных
```
#### `Importers`
Классы загрузки и обработки данных.
# Прогресс
# Прогресс создания обработчиков
## Aonprd (Архивы Нефиса)