Этот проект представляет собой архитектуру на основе микросервисов, реализованную с использованием .NET 8 и Entity Framework Core. Решение состоит из трёх микросервисов: UserService, ProductService и OrderService. MainService обрабатывает взаимодействие между этими службами с помощью шлюза API Ocelot, каждый из которых отвечает за свой собственный домен.
UserService , ProductService и OrderService .POST GET /users/{id} в /api/users/{id}POST GET /products/{id} в /api/products/{id}POST GET /orders/{id} в /api/orders/{id}GET /api/users — получить всех пользователей.GET /api/users/{id} — получить пользователя по идентификатору.POST /api/users — добавить нового пользователя.GET /api/products — получить все продукты.GET /api/products/{id} — получить продукт по идентификатору.POST /api/products — Добавить новый товар.GET /api/orders — получить все заказы.GET /api/orders/{id} — Получить заказ по идентификатору.POST /api/orders — Создать новый заказ.GET /api/orders/details/{id} — получить сведения о заказе, включая информацию о пользователе и продукте.GET /api/users/{id} и GET /api/products/{id} из этих служб для получения информации о пользователях и продуктах. Каждая служба имеет собственный контекст базы данных и настроена на использование Entity Framework Core для доступа к данным. Службы настроены для взаимодействия друг с другом посредством HTTP-запросов.
UserDto , ProductDto , OrderDtoUserService , ProductService и OrderService .MainService упрощает взаимодействие с микросервисами, предоставляя унифицированный интерфейс.UserContextUserProductContextProductOrderContextOrder Каждая служба включает Swagger для тестирования. Вы можете получить к ним доступ по следующим URL-адресам:
https://localhost:7188/swaggerhttps://localhost:7197/swaggerhttps://localhost:7138/swagger Каждая служба доступна из MainService. Вы можете получить к ним доступ, выполнив запрос GET или POST в Postman:
https://localhost:7133/users/https://localhost:7133/products/https://localhost:7133/orders/