Задача.
Написать API сервис для текущих и исторических курсов обмена валют.
Требования.
<aside>
👀 C#
Net Сore 2.0 или выше.
EntityFrameworkCore.
</aside>
Выполнение.
- Курсы валют брать с сайта Европейского центрального банка:
- По запросу “GET /latest” сделать вывод последних доступных курсов
- По запросу “GET /{date}” сделать вывод доступных курсов по дате, если они существуют или ошибку
- Добавить query “base” и сделать вывод курсов относительно валюты <base> (по-умолчанию у банка это EUR) у эндпоинтов выше
Пример: GET /latest?base=USD
- Добавить query “symbols” и сделать вывод курсов только по валютам из данного query, формат следующий - symbol[,symbol…]
Пример: GET /latest?symbols=USD,RUB
- По запросу “GET /history” сделать вывод курсов по заданным датам (query “start_at” и “end_at” обязательны)
Пример: GET /history?start_at=2018-01-01&end_at=2018-09-01
- Реализовать пункты 4 и 5 для предыдущего пункта
- Сделать кэширование в базу данных, чтобы файл с сайта банка не подгружался множество раз
- Убедиться, чтобы новые данные с сайта банка догружались в бд своевременно.
- Сделать возможность выбора бд из MSSQL и SQLite