Tisa.BpmCore 2025.1.7.410

dotnet add package Tisa.BpmCore --version 2025.1.7.410
                    
NuGet\Install-Package Tisa.BpmCore -Version 2025.1.7.410
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Tisa.BpmCore" Version="2025.1.7.410" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Tisa.BpmCore" Version="2025.1.7.410" />
                    
Directory.Packages.props
<PackageReference Include="Tisa.BpmCore" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Tisa.BpmCore --version 2025.1.7.410
                    
#r "nuget: Tisa.BpmCore, 2025.1.7.410"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=Tisa.BpmCore&version=2025.1.7.410
                    
Install Tisa.BpmCore as a Cake Addin
#tool nuget:?package=Tisa.BpmCore&version=2025.1.7.410
                    
Install Tisa.BpmCore as a Cake Tool

Tisa.BpmCore

Описание проекта

Tisa.BpmCore - это библиотека для работы с платформой BPMSoft, предоставляющая базовые абстракции и реализации для взаимодействия с BPM-системой. Проект является частью экосистемы ТИСА и предназначен для упрощения разработки бизнес-приложений, работающих с BPMSoft.

Основные возможности

  • Поддержка .NET 8.0 и .NET 9.0
  • Интеграция с платформой BPMSoft
  • REST API для взаимодействия с BPMSoft
  • JSON сериализация/десериализация
  • Асинхронное программирование

Структура проекта

Tisa.BpmCore/
├── Abstractions/    # Абстракции и интерфейсы
├── Clients/         # Клиенты для работы с BPMSoft
├── Data/            # Модели данных
├── Exceptions/      # Кастомные исключения
├── Extensions/      # Методы расширения
├── Infrastructure/  # Инфраструктурные компоненты
├── Requests/        # Модели запросов
├── Responses/       # Модели ответов
└── Resources/       # Ресурсы проекта

Установка

NuGet Package Manager

Install-Package Tisa.BpmCore

.NET CLI

dotnet add package Tisa.BpmCore

Начало работы

Базовая конфигурация

public void ConfigureServices(IServiceCollection services)
{
    services.AddBpmCore(options =>
    {
        options.BaseUrl = "https://your-bpmsoft-instance.com";
        options.ApiKey = "your-api-key";
        options.Timeout = TimeSpan.FromSeconds(30);
    });
}

Использование клиента

public class YourService
{
    private readonly IBpmClient _bpmClient;

    public YourService(IBpmClient bpmClient)
    {
        _bpmClient = bpmClient;
    }

    public async Task<ProcessInstance> StartProcessAsync(string processName)
    {
        return await _bpmClient.StartProcessAsync(processName);
    }
}

Основные возможности

Работа с процессами

  • Запуск процессов
  • Получение информации о процессах
  • Управление состоянием процессов
  • Работа с задачами

Управление данными

  • Сериализация/десериализация JSON
  • Валидация данных
  • Преобразование типов

Обработка ошибок

  • Кастомные исключения
  • Логирование ошибок
  • Повторные попытки при сбоях

Разработка

Требования

  • .NET 8.0 SDK или выше
  • Visual Studio 2022 или VS Code
  • Доступ к BPMSoft платформе

Сборка проекта

dotnet build

Тестирование

dotnet test

Публикация пакета

dotnet pack
dotnet nuget push Tisa.BpmCore.1.0.0.nupkg -s https://api.nuget.org/v3/index.json

Конвенции разработки

Кодирование

  • Использование UTF-8 кодировки
  • Соблюдение правил именования .NET
  • Комментарии на русском языке
  • XML-документация для публичных API

Структура кода

  • Разделение на слои (Abstractions, Implementation)
  • Использование паттернов проектирования
  • Асинхронное программирование
  • Обработка исключений

Тестирование

  • Unit-тесты для всех компонентов
  • Интеграционные тесты для клиентов
  • Использование Moq для тестирования

Безопасность

Основные принципы

  • Безопасное хранение учетных данных
  • Валидация входных данных
  • Защита от инъекций
  • Использование HTTPS

Рекомендации

  • Регулярное обновление зависимостей
  • Мониторинг уязвимостей
  • Аудит безопасности кода

Производительность

Оптимизация

  • Асинхронные операции
  • Кэширование где необходимо
  • Эффективное использование ресурсов
  • Оптимизация сетевых запросов

Мониторинг

  • Логирование критических операций
  • Метрики производительности
  • Профилирование при необходимости

Поддержка и развитие

Процесс разработки

  1. Создание feature branch
  2. Написание тестов
  3. Реализация функционала
  4. Code review
  5. Слияние в main

Документация

  • Поддержка актуальности README
  • Обновление XML-документации
  • Ведение changelog

Поддержка

  • Issue tracking
  • Pull request review
  • Версионирование и релизы

Лицензия

MIT License

Контакты

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Tisa.BpmCore:

Package Downloads
Tisa.BpmApp

Базовые классы и компоненты приложений ТИСА для работы с использованием NetCore на платформе BPMSoft.

GitHub repositories

This package is not used by any popular GitHub repositories.