36. Avalonia UI Real World Injecting Entity Framework
00:00 Введение в Entity Framework • Использование Entity Framework для сохранения настроек в локальной или удалённой базе данных. • Обновление модели данных настроек для отражения необходимых параметров. • Обсуждение логических значений: «пропускать файлы, если они открыты» и «разрешать дублирование записей». 00:58 Логические значения и их применение • Объяснение использования логических значений в пакетных заданиях. • Пример с пропуском файлов без действий. 01:23 Хранение IP-адресов и логинов • Сохранение IP-адресов хоста Solidworks в виде строки. • Хранение PDM Enterprise, имени пользователя, публичной строки, PDME, имени хранилища, логина и пароля. • Проблемы с защитой паролей в локальной базе данных. 02:51 Защита паролей и миграция данных • Необходимость защиты базы данных SQL паролем и использования хэширующего кода. • Временное сохранение паролей в памяти до разработки мер безопасности. 03:41 Миграция данных и обновление базы • Проблема несоответствия класса Entity Framework реальной базе данных. • Два способа решения проблемы: удаление папки миграции или обновление базы данных. • Использование команды dot net ef для создания миграций. 05:16 Применение миграций • Создание проекта и класса для миграции данных. • Обновление базы данных и добавление новых полей. • Проверка обновления базы данных после применения миграций. 07:16 Временное удаление миграций • Временное удаление папки миграций и базы данных для упрощения разработки. • Перенос данных в миграцию при сохранении данных. 08:28 Интеграция модели данных на страницу • Загрузка страницы настроек через ViewModel. • Внедрение зависимости для доступа к базе данных. 09:04 Временные зависимости и фабрика баз данных • Использование временных зависимостей для краткосрочных вызовов базы данных. • Создание фабрики баз данных для повторного создания и утилизации сервисов базы данных. 10:18 Фабрика баз данных • Создание фабрики баз данных, аналогичной фабрике страниц. • Возврат модели представления и необходимость сервиса для обработки служб базы данных. • Обсуждение глобальной службы баз данных и службы настроек. 11:15 Временный класс • Класс должен быть одноразовым для обработки вызовов базы данных и удаления данных. • Управление удалением сервиса. 11:51 Контекст базы данных • Вставка контекста базы данных в службу баз данных. • Извлечение контекста из зависимости. • Присвоение контекста в конструкторе. 12:19 Внедрение зависимостей • Проверка внедрения зависимостей для контекста базы данных приложения. • Добавление переходного процесса для контекста базы данных. • Подключение службы базы данных к контексту. 13:33 Миграции • Перенос функции применения миграций из конструктора в отдельную функцию. • Проверка наличия миграций при запуске приложения. 14:59 Настройки • Возможность разделения служб на отдельные части. • Обработка настроек в единой службе базы данных. • Получение первой настройки из контекста. 16:16 Обнуление контекста • Изменение контекста на класс с возможностью обнуления. • Обновление базы данных при вызове функции. 18:51 Фабрика баз данных • Создание фабрики баз данных для возврата службы базы данных. • Использование фабрики для обработки вызовов. • Добавление синглтона для фабрики баз данных. 21:37 Завершение • Внедрение реального контекста базы данных Entity Framework Core. • Маскировка необработанных вызовов Entity Framework. • Представление временных процессов внутри синглтонов. • Запрос фабрики баз данных для вызова служб баз данных. 22:05 Импорт и сохранение фабрики баз данных • Импортируем и сохраняем фабрику баз данных как частную. • Фабрика баз данных доступна везде, где мы захотим её использовать. • Указываем пути к местоположению для получения службы базы данных. 23:17 Работа с настройками и фиктивными данными • Получаем настройки и проверяем их пустота. • Создаём фиктивные данные при запуске приложения для сохранения в базе данных. • Применяем миграции при запуске приложения через модель main view. 24:28 Внедрение фабрики баз данных • Копируем и вставляем фабрику баз данных. • Проверяем наличие фабрики в главном приложении. • Убеждаемся, что фабрика баз данных правильно внедрена. 25:40 Выполнение миграций • Применяем миграции с помощью фабрики баз данных и dbcontext. • Если настройки равны нулю, применяем настройки по умолчанию. • Удаляем временный код и сохраняем настройки. 26:49 Обновление настроек • Переопределяем модель данных настроек. • Удаляем все настройки из базы данных и добавляем новые. • Сохраняем изменения. 29:58 Установка идентификаторов • Генерируем идентификаторы для настроек. • Решаем проблемы с обнуляемыми значениями и длиной строк. • Ограничиваем регистр полей. 31:35 Проверка и завершение • Проверяем наличие нужных значений в базе данных. • Извлекаем начальные пути из базы данных и сохраняем их. • Интеграция Entity Framework с внедрением зависимостей завершена.
00:00 Введение в Entity Framework • Использование Entity Framework для сохранения настроек в локальной или удалённой базе данных. • Обновление модели данных настроек для отражения необходимых параметров. • Обсуждение логических значений: «пропускать файлы, если они открыты» и «разрешать дублирование записей». 00:58 Логические значения и их применение • Объяснение использования логических значений в пакетных заданиях. • Пример с пропуском файлов без действий. 01:23 Хранение IP-адресов и логинов • Сохранение IP-адресов хоста Solidworks в виде строки. • Хранение PDM Enterprise, имени пользователя, публичной строки, PDME, имени хранилища, логина и пароля. • Проблемы с защитой паролей в локальной базе данных. 02:51 Защита паролей и миграция данных • Необходимость защиты базы данных SQL паролем и использования хэширующего кода. • Временное сохранение паролей в памяти до разработки мер безопасности. 03:41 Миграция данных и обновление базы • Проблема несоответствия класса Entity Framework реальной базе данных. • Два способа решения проблемы: удаление папки миграции или обновление базы данных. • Использование команды dot net ef для создания миграций. 05:16 Применение миграций • Создание проекта и класса для миграции данных. • Обновление базы данных и добавление новых полей. • Проверка обновления базы данных после применения миграций. 07:16 Временное удаление миграций • Временное удаление папки миграций и базы данных для упрощения разработки. • Перенос данных в миграцию при сохранении данных. 08:28 Интеграция модели данных на страницу • Загрузка страницы настроек через ViewModel. • Внедрение зависимости для доступа к базе данных. 09:04 Временные зависимости и фабрика баз данных • Использование временных зависимостей для краткосрочных вызовов базы данных. • Создание фабрики баз данных для повторного создания и утилизации сервисов базы данных. 10:18 Фабрика баз данных • Создание фабрики баз данных, аналогичной фабрике страниц. • Возврат модели представления и необходимость сервиса для обработки служб базы данных. • Обсуждение глобальной службы баз данных и службы настроек. 11:15 Временный класс • Класс должен быть одноразовым для обработки вызовов базы данных и удаления данных. • Управление удалением сервиса. 11:51 Контекст базы данных • Вставка контекста базы данных в службу баз данных. • Извлечение контекста из зависимости. • Присвоение контекста в конструкторе. 12:19 Внедрение зависимостей • Проверка внедрения зависимостей для контекста базы данных приложения. • Добавление переходного процесса для контекста базы данных. • Подключение службы базы данных к контексту. 13:33 Миграции • Перенос функции применения миграций из конструктора в отдельную функцию. • Проверка наличия миграций при запуске приложения. 14:59 Настройки • Возможность разделения служб на отдельные части. • Обработка настроек в единой службе базы данных. • Получение первой настройки из контекста. 16:16 Обнуление контекста • Изменение контекста на класс с возможностью обнуления. • Обновление базы данных при вызове функции. 18:51 Фабрика баз данных • Создание фабрики баз данных для возврата службы базы данных. • Использование фабрики для обработки вызовов. • Добавление синглтона для фабрики баз данных. 21:37 Завершение • Внедрение реального контекста базы данных Entity Framework Core. • Маскировка необработанных вызовов Entity Framework. • Представление временных процессов внутри синглтонов. • Запрос фабрики баз данных для вызова служб баз данных. 22:05 Импорт и сохранение фабрики баз данных • Импортируем и сохраняем фабрику баз данных как частную. • Фабрика баз данных доступна везде, где мы захотим её использовать. • Указываем пути к местоположению для получения службы базы данных. 23:17 Работа с настройками и фиктивными данными • Получаем настройки и проверяем их пустота. • Создаём фиктивные данные при запуске приложения для сохранения в базе данных. • Применяем миграции при запуске приложения через модель main view. 24:28 Внедрение фабрики баз данных • Копируем и вставляем фабрику баз данных. • Проверяем наличие фабрики в главном приложении. • Убеждаемся, что фабрика баз данных правильно внедрена. 25:40 Выполнение миграций • Применяем миграции с помощью фабрики баз данных и dbcontext. • Если настройки равны нулю, применяем настройки по умолчанию. • Удаляем временный код и сохраняем настройки. 26:49 Обновление настроек • Переопределяем модель данных настроек. • Удаляем все настройки из базы данных и добавляем новые. • Сохраняем изменения. 29:58 Установка идентификаторов • Генерируем идентификаторы для настроек. • Решаем проблемы с обнуляемыми значениями и длиной строк. • Ограничиваем регистр полей. 31:35 Проверка и завершение • Проверяем наличие нужных значений в базе данных. • Извлекаем начальные пути из базы данных и сохраняем их. • Интеграция Entity Framework с внедрением зависимостей завершена.
