Я работаю над проектом инфраструктуры импорта в. NET Core 3.1 и надеюсь получить некоторые идеи для некоторых всеобъемлющих подходов к проблеме:
КОНТЕКСТ
- Мы читаем файл Excel из Google Bucket, который содержит от 4000 до 200 записей местоположений с контактными данными для местоположения в строке местоположений.
- После того, как мы сохраняем местоположения в таблице местоположений, нам нужно сохранить данные в 4-6 других таблицах (данные геокодирования, данные о событиях, данные программы и некоторые другие).
- Должны быть созданы записи местоположения, затем должны быть созданы другие записи с LocationId и / или ContactId в качестве FK.
CURRENT STATE
- Возможность чтения из корзины и сохранения всех необходимых данных в каждой таблице.
- В настоящее время используется консольное приложение, запускаемое вручную одним из наших разработчиков с помощью строки подключения, указывающей на prod.
- Это процесс, состоящий из 7-9 шагов, который занимает 15-20 минут, которые мы выполняем еженедельно.
- Мы используем пакет EF Bulk Insert для массовых вставок, когда данные готовы.
БУДУЩЕЕ СОСТОЯНИЕ И ЗАПРОСЫ ВВОДА Мой вопрос будет Как бы вы подошли к следующим пунктам?
Мы хотели бы автоматизировать шаги так, чтобы это произошло:
- Клиент добавляет файл в корзину.
- Запущен процесс импорта местоположения.
- После создания местоположений контакты создаются с соответствующим LocationId.
- Остальные 4-6 таблиц заполняются асинхронно.
Мы снова работаем. NET Core 3.1. Заранее спасибо!