Tisa.XrmCore 2025.9.9.410

dotnet add package Tisa.XrmCore --version 2025.9.9.410
                    
NuGet\Install-Package Tisa.XrmCore -Version 2025.9.9.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.XrmCore" Version="2025.9.9.410" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Tisa.XrmCore" Version="2025.9.9.410" />
                    
Directory.Packages.props
<PackageReference Include="Tisa.XrmCore" />
                    
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.XrmCore --version 2025.9.9.410
                    
#r "nuget: Tisa.XrmCore, 2025.9.9.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.XrmCore&version=2025.9.9.410
                    
Install Tisa.XrmCore as a Cake Addin
#tool nuget:?package=Tisa.XrmCore&version=2025.9.9.410
                    
Install Tisa.XrmCore as a Cake Tool

Tisa.XrmCore

NuGet License: MIT

Описание

Tisa.XrmCore - это библиотека для .NET, предоставляющая клиент, совместимый с WS-Trust, для подключения к локальным экземплярам IFD Dynamics 365 из .NET Core. Библиотека создана на основе Microsoft.PowerPlatform.Dataverse.Client и предлагает альтернативную реализацию IOrganizationService с использованием WS-Trust.

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

  • Подключение к Dynamics 365 по URL-адресу службы организации
  • Аутентификация с использованием имени пользователя и пароля
  • Поддержка WS-Trust протокола
  • Асинхронные операции
  • Поддержка .NET 8.0 и .NET 9.0

Установка

dotnet add package Tisa.XrmCore

Быстрый старт

using Tisa.XrmCore;

// Создание клиента для локального подключения
var client = new OnPremiseClient(
    organizationUrl: "https://your-org.crm.dynamics.com",
    username: "your-username",
    password: "your-password"
);

// Асинхронное подключение
await client.ConnectAsync();

// Использование клиента
var response = await client.ExecuteAsync(new WhoAmIRequest());

Поддерживаемые сценарии аутентификации

Локальное подключение (On-Premise)

var client = new OnPremiseClient(
    organizationUrl: "https://your-org.crm.dynamics.com",
    username: "your-username",
    password: "your-password"
);
var client = new ADAuthClient(
    organizationUrl: "https://your-org.crm.dynamics.com",
    domain: "your-domain",
    username: "your-username",
    password: "your-password"
);

Claims-Based Аутентификация

var client = new ClaimsBasedAuthClient(
    organizationUrl: "https://your-org.crm.dynamics.com",
    username: "your-username",
    password: "your-password"
);

Расширенные возможности

Асинхронные операции

// Создание записи
var entity = new Entity("account");
entity["name"] = "Test Account";
var createResponse = await client.CreateAsync(entity);

// Обновление записи
entity["name"] = "Updated Account";
await client.UpdateAsync(entity);

// Удаление записи
await client.DeleteAsync("account", createResponse);

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

try
{
    await client.ConnectAsync();
}
catch (XrmException ex)
{
    // Обработка ошибок подключения
    Console.WriteLine($"Ошибка подключения: {ex.Message}");
}

Требования

  • .NET 8.0 или .NET 9.0
  • Microsoft.PowerPlatform.Dataverse.Client 1.2.3 или выше
  • Microsoft.IdentityModel.Protocols.WsTrust 6.8.0 или выше

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

При использовании библиотеки убедитесь, что:

  • Используются безопасные методы хранения учетных данных
  • Применяются последние обновления безопасности
  • Соблюдаются рекомендации по безопасности Dynamics 365

Примеры использования

Создание и обновление записей

// Создание новой записи
var account = new Entity("account");
account["name"] = "Test Company";
account["telephone1"] = "123-456-7890";
var accountId = await client.CreateAsync(account);

// Обновление записи
account["name"] = "Updated Company";
await client.UpdateAsync(account);

Выполнение запросов

// Получение записей
var query = new QueryExpression("account");
query.ColumnSet = new ColumnSet("name", "telephone1");
var results = await client.RetrieveMultipleAsync(query);

foreach (var entity in results.Entities)
{
    Console.WriteLine($"Account: {entity["name"]}, Phone: {entity["telephone1"]}");
}

Рекомендации по использованию

  1. Всегда используйте асинхронные методы для операций с CRM
  2. Реализуйте правильную обработку ошибок
  3. Используйте пулы подключений для оптимизации производительности
  4. Следите за обновлениями библиотеки
  5. Регулярно проверяйте логи на наличие ошибок

Отладка

Для отладки подключения можно использовать следующие методы:

// Включение подробного логирования
client.EnableTracing = true;

// Получение последней ошибки
var lastError = client.LastError;

Известные ограничения

  • Поддерживается только WS-Trust аутентификация
  • Требуется доступ к URL организации
  • Не поддерживается OAuth аутентификация

Авторы

Команда разработчиков TISA

Лицензия

MIT License

Поддержка

Для получения поддержки или сообщения об ошибках, пожалуйста, напишите нам на support@tisn.ru

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.XrmCore:

Package Downloads
Tisa.XrmApp

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

GitHub repositories

This package is not used by any popular GitHub repositories.