Перейти к основному содержимому

Сценарий разработки сервиса бизнес-логики на C#

Предварительные требования

Убедитесь, что вы выполнили следующие требования:

  • Вы имеете доступ к данным репозитория https://nexus.atomkod.ru/. Если вы приобрели Атомкод, в Службе технической поддержки вы можете запросить учетные данные для доступа. Вы можете обратиться в Службу технической поддержки по электронной почте по адресу CifrumSupport@rosatom.ru. В сообщении электронной почты вам необходимо указать название компании, которую вы представляете.

  • На вашем компьютере установлен Visual Studio 2022 с рабочими нагрузками ASP.NET и разработка веб-приложений и Разработка классических приложений .NET.

  • Вы вошли в AdminTools.

Этапы

Разработка сервиса бизнес-логики включает следующие этапы:

  1. Подготовка шаблона для разработки сервиса бизнес-логики

    Вы разрабатываете сервис бизнес-логики на основе шаблона, подготовленного разработчиками Атомкод. Шаблон сервиса бизнес-логики создан на основе шаблона, который используется для микросервисов Атомкод.

    По ссылке https://nexus.atomkod.ru/repository/platform-raw/template/<архив-шаблона>.zip вы скачиваете архивный файл, содержащий шаблон сервиса. Затем вы помещаете этот архивный файл в папку с шаблонами для Visual Studio %USERPROFILE%/Документы/Visual Studio 2022/Templates/ProjectTemplates/Visual C# и извлекаете файлы из архива.

  2. Создание проекта в Visual Studio для разработки сервиса бизнес-логики

    Вы запускаете Visual Studio и создаете проект на основе шаблона сервиса бизнес-логики. В свойствах проекта в качестве целевой платформы вы указываете .NET 8.0.

    Проект в Visual Studio, созданный на основе шаблона сервиса, имеет определенную структуру. Классы, описанные в проекте, позволяют изменять определенные параметры разрабатываемого сервиса бизнес-логики.

  3. Обновление пакетов NuGet в проекте для разработки сервиса бизнес-логики

    Поскольку разработчики Атомкод периодически изменяют пакеты NuGet в составе шаблона сервиса, вы обновляете пакеты NuGet в созданном в Visual Studio проекте. В диспетчере пакетов NuGet в качестве имени пакета вы указываете Atomkod и в качестве источника вы указывате https://nexus.atomkod.ru/repository/nuget-pmd/index.json.

  4. Программирование бизнес-логики

    В настроенном в Visual Studio проекте вы реализуете бизнес-логику на основе требований к разрабатываемому приложению. При разработке сервиса бизнес-логики вы можете управлять конфигурацией сервиса, настраивать сбор диагностических данных.

    При разработке сервиса бизнес-логики вы учитываете особенности разработки контроллера веб-API.

    Для интеграции сервиса бизнес-логики с API сервисов Атомкод вы используете библиотеку ApiClient.

    Вы можете управлять генерацией файла Swagger с помощью свойств одного из классов в структуре проекта в Visual Studio, созданного на основе шаблона сервиса бизнес-логики.

    Если при разработке модели данных приложения вы создали атрибуты класса с включенными параметрами индексации для полнотекстового поиска, в программном коде бизнес-логики вы можете реализовать полнотекстовый поиск.

  5. Разработка модульных тестов для сервиса бизнес-логики

    В Visual Studio вы создаете проект с модульными тестами для сервиса бизнес-логики, разрабатываете тесты и добиваетесь их успешного выполнения. Этот проект вы создаете в том же решении Visual Studio, в котором вы создавали проект для разработки сервиса бизнес-логики. При добавлении нового проекта вы выбираете шаблон Тестовый проект xUnit и указываете имя XCICD<имя сервиса>.

  6. Регистрация сервиса бизнес-логики в экземпляре Атомкод

    В AdminTools вы регистрируете новый сервис типа Product.

  7. Настройка сервиса бизнес-логики в экземпляре Атомкод

    В AdminTools в списке сервисов вы выбираете новый зарегистрированный сервис и указываете его параметры из списка параметров, которые вы определили в процессе разработки сервиса.

  8. Запуск и отладка сервиса бизнес-логики

    Вы отлаживаете разрабатываемый сервис на локальном компьютере. В определенных сценариях отладки сервиса вам необходимо настроить дополнительные параметры.

  9. Подготовка вспомогательных артефактов сервиса бизнес-логики

    Убедитесь, что конфигурация сервиса бизнес-логики для работы в эксплуатационной среде подготовлена.

    Для разработанного сервиса бизнес-логики вы создаете клиентов и API-ресурсы межсервисного взаимодействия. Секреты клиентов, созданные при настройке клиентов, понадобятся на следующем этапе этого сценария в процессе создания Docker-контейнера.

  10. Доставка разработанного сервиса бизнес-логики на стенд с развернутым экземпляром Атомкод

    Разработанный сервис должен быть упакован в образ Docker-контейнера, который должен быть доставлен на стенд с развернутым экземпляром Атомкод согласно описанной процедуре.

Результаты

Разработанный сервис бизнес-логики доступен на стенде с развернутым экземпляром Атомкод. При разработке приложения в DevTools на этапе разработки интерфейса приложения вы можете использовать разработанный сервис бизнес-логики.