Tisa.XrmApp
2025.9.9.410
dotnet add package Tisa.XrmApp --version 2025.9.9.410
NuGet\Install-Package Tisa.XrmApp -Version 2025.9.9.410
<PackageReference Include="Tisa.XrmApp" Version="2025.9.9.410" />
<PackageVersion Include="Tisa.XrmApp" Version="2025.9.9.410" />
<PackageReference Include="Tisa.XrmApp" />
paket add Tisa.XrmApp --version 2025.9.9.410
#r "nuget: Tisa.XrmApp, 2025.9.9.410"
#addin nuget:?package=Tisa.XrmApp&version=2025.9.9.410
#tool nuget:?package=Tisa.XrmApp&version=2025.9.9.410
Tisa.XrmApp
Базовые классы и компоненты приложений ТИСА для работы с использованием .NET Core.
Описание
Tisa.XrmApp - это базовый пакет для разработки приложений, работающих с Microsoft Dynamics 365/XRM. Пакет предоставляет набор базовых классов, интерфейсов и компонентов для быстрой разработки приложений, интегрирующихся с Dynamics 365.
Требования
- .NET 8.0 или выше
- Microsoft Dynamics 365/XRM
- Visual Studio 2022 или выше
Установка
dotnet add package Tisa.XrmApp
Основные возможности
- Базовые классы для работы с XRM
- Middleware для обработки запросов
- Система аутентификации
- Обработка ошибок
- Установка сервисов
- Общие компоненты для работы с Dynamics 365
Структура проекта
Tisa.XrmApp/
├── Authentication/ # Компоненты аутентификации
├── Common/ # Общие компоненты
├── Errors/ # Обработка ошибок
├── Events/ # Обработчики событий
├── Headers/ # Работа с HTTP заголовками
├── Middleware/ # Middleware компоненты
├── Services/ # Базовые сервисы
├── ServiceInstallers/ # Установщики сервисов
└── Shared/ # Общие ресурсы
Использование
Базовая настройка
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddTisaXrmApp();
}
public void Configure(IApplicationBuilder app)
{
app.UseTisaXrmApp();
}
}
Настройка аутентификации
services.AddTisaXrmAppAuthentication(options =>
{
options.Authority = "https://your-authority";
options.ClientId = "your-client-id";
options.ClientSecret = "your-client-secret";
});
Использование базовых сервисов
public class YourService
{
private readonly IXrmService _xrmService;
public YourService(IXrmService xrmService)
{
_xrmService = xrmService;
}
public async Task<Entity> GetEntityAsync(string entityName, Guid id)
{
return await _xrmService.RetrieveAsync(entityName, id);
}
}
Разработка
Требования к разработке
- Соблюдение правил кодирования C#
- Использование async/await для асинхронных операций
- Документирование публичных API
- Написание unit-тестов
- Следование принципам SOLID
Настройка окружения разработки
- Клонируйте репозиторий
- Установите зависимости:
dotnet restore
- Соберите проект:
dotnet build
- Запустите тесты:
dotnet test
Правила коммитов
- Используйте осмысленные сообщения коммитов
- Следуйте соглашению Conventional Commits
- Каждый коммит должен содержать только связанные изменения
Тестирование
Для тестирования используется FakeXrmEasy:
[TestClass]
public class YourTestClass
{
private IXrmFakedContext _context;
private IOrganizationService _service;
[TestInitialize]
public void Initialize()
{
_context = new XrmFakedContext();
_service = _context.GetOrganizationService();
}
[TestMethod]
public void YourTestMethod()
{
// Тестовый код
}
}
Авторы
Команда разработчиков TISA
Лицензия
MIT License
Поддержка
Для получения поддержки или сообщения об ошибках, пожалуйста, напишите нам на support@tisn.ru
Product | Versions 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. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- FluentValidation (>= 11.11.0)
- Lindhart.Analyser.MissingAwaitWarning (>= 2.0.0)
- Mediator.Abstractions (>= 2.1.7)
- NSwag.Generation (>= 14.3.0)
- Tisa.Authorization (>= 2025.9.9.410)
- Tisa.Common (>= 2025.9.9.410)
- Tisa.Infrastructure (>= 2025.9.9.410)
- Tisa.XrmCore (>= 2025.9.9.410)
-
net9.0
- FluentValidation (>= 11.11.0)
- Lindhart.Analyser.MissingAwaitWarning (>= 2.0.0)
- Mediator.Abstractions (>= 2.1.7)
- NSwag.Generation (>= 14.3.0)
- Tisa.Authorization (>= 2025.9.9.410)
- Tisa.Common (>= 2025.9.9.410)
- Tisa.Infrastructure (>= 2025.9.9.410)
- Tisa.XrmCore (>= 2025.9.9.410)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated | |
---|---|---|---|
2025.9.9.410 | 161 | 4/9/2025 | |
2025.9.9.400 | 248 | 4/8/2025 |