Iskra.Core.Hosting 1.0.132

There is a newer version of this package available.
See the version list below for details.
dotnet add package Iskra.Core.Hosting --version 1.0.132
                    
NuGet\Install-Package Iskra.Core.Hosting -Version 1.0.132
                    
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="Iskra.Core.Hosting" Version="1.0.132" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Iskra.Core.Hosting" Version="1.0.132" />
                    
Directory.Packages.props
<PackageReference Include="Iskra.Core.Hosting" />
                    
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 Iskra.Core.Hosting --version 1.0.132
                    
#r "nuget: Iskra.Core.Hosting, 1.0.132"
                    
#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.
#:package Iskra.Core.Hosting@1.0.132
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Iskra.Core.Hosting&version=1.0.132
                    
Install as a Cake Addin
#tool nuget:?package=Iskra.Core.Hosting&version=1.0.132
                    
Install as a Cake Tool

Iskra.Core.Hosting

Описание

Iskra.Core.Hosting — это компонент фреймворка Iskra, предназначенный для предоставления необходимых услуг хостинга для приложений.

Установка

Чтобы установить пакет, выполните следующую команду в вашем терминале:

dotnet add package Iskra.Core.Hosting

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

Настройка EndpointsOptions в appsettings.json

Вот пример того, как настроить EndpointsOptions в файле appsettings.json:

{
	"EndpointsOptions": {
		"KeycloakAddress": "https://keycloak.example.com",
		"ApiGatewayAddress": "https://api-gateway.example.com",
		"UiAddress": "https://ui.example.com",
		"AdditionalAddresses": {
			"Service1": "https://service1.example.com",
			"Service2": "https://service2.example.com"
		}
	}
}

Регистрация EndpointsOptions в DI

Чтобы зарегистрировать EndpointsOptions в контейнере зависимостей, используйте метод расширения AddEndpointsOptions:

using Microsoft.Extensions.DependencyInjection;

var services = new ServiceCollection();
services.AddEndpointsOptions(Configuration);

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

Для того чтобы использовать атрибут HandleIskraUiExceptionAttribute, необходимо применить его к контроллеру или методу действия в ASP.NET Core приложении. Ниже приведен пример, как это можно сделать.

Пример контроллера
using Microsoft.AspNetCore.Mvc;

namespace Iskra.Core.Hosting.Controllers;

[ApiController]
[Route("api/[controller]")]
[HandleIskraUiExceptionAttribute] // Применение атрибута к контроллеру
public class ExampleController : ControllerBase
{
    [HttpGet("test")]
    public IActionResult Test()
    {
        try
        {
            // Логика, которая может выбросить IskraException
            throw new IskraException(IskraErrorCode.InvalidInvitationAccessTokenKey, "Ошибка доступа", null);
        }
        catch (IskraException ex)
        {
            // Обработка исключения внутри контроллера (если необходимо)
            return StatusCode(500, ex.Result);
        }
    }
}
Пример метода действия
using Microsoft.AspNetCore.Mvc;

namespace Iskra.Core.Hosting.Controllers;

[ApiController]
[Route("api/[controller]")]
public class ExampleController : ControllerBase
{
    [HttpGet("test")]
    [HandleIskraUiExceptionAttribute] // Применение атрибута к методу действия
    public IActionResult Test()
    {
        try
        {
            // Логика, которая может выбросить IskraException
            throw new IskraException(IskraErrorCode.InvalidInvitationAccessTokenKey, "Ошибка доступа", null);
        }
        catch (IskraException ex)
        {
            // Обработка исключения внутри метода действия (если необходимо)
            return StatusCode(500, ex.Result);
        }
    }
}

В обоих примерах атрибут HandleIskraUiExceptionAttribute применяется к контроллеру или методу действия. Это позволяет автоматически обрабатывать исключения типа IskraException, возвращая соответствующий JSON-ответ с кодом ошибки и сообщением.

Пример ответа

При возникновении исключения IskraException с кодом InvalidInvitationAccessTokenKey, клиент получит следующий JSON-ответ:

{
  "IskraErrorCode": "ISKRA001",
  "Title": null,
  "Subtitle": null,
  "Message": "Ошибка доступа"
}

Этот пример демонстрирует, как интегрировать и использовать атрибут HandleIskraUiExceptionAttribute для обработки исключений в ASP.NET Core приложении.

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 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (6)

Showing the top 5 NuGet packages that depend on Iskra.Core.Hosting:

Package Downloads
Iskra.Clients.SequenceGenerator

Package Description

Iskra.Clients.IntegrationDadata

Package Description

Iskra.Clients.References

Package Description

Iskra.Clients.Organizations

Package Description

Iskra.Clients.Requests

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.134 310 11/17/2025
1.0.133 314 11/17/2025
1.0.132 223 11/14/2025
1.0.131 170 11/6/2025
1.0.130 170 11/5/2025
1.0.129 140 10/31/2025
1.0.128 137 10/31/2025
1.0.127 142 10/31/2025
1.0.126 165 10/21/2025
1.0.125 159 10/16/2025
1.0.124 136 9/26/2025
1.0.123 179 9/24/2025
1.0.122 209 8/28/2025
1.0.121 230 8/26/2025
1.0.120 290 8/25/2025
1.0.119 152 8/21/2025
1.0.118 153 8/19/2025
1.0.117 157 8/18/2025
1.0.116 153 8/12/2025
1.0.115 141 7/11/2025
1.0.114 139 7/11/2025
1.0.113 138 7/11/2025
1.0.112 168 7/10/2025
1.0.111 161 6/18/2025
1.0.110 255 6/9/2025
1.0.109 164 6/3/2025
1.0.108 167 5/26/2025
1.0.107 173 5/26/2025
1.0.105 144 5/23/2025
1.0.104 285 5/22/2025
1.0.102 1,612 4/16/2025
1.0.101 235 4/16/2025
1.0.100 364 4/16/2025
1.0.99 265 4/16/2025
1.0.98 233 4/15/2025
1.0.97 247 4/14/2025
1.0.96 237 4/14/2025
1.0.95 207 4/14/2025
1.0.94 540 4/1/2025
1.0.93 191 4/1/2025
1.0.92 196 3/27/2025
1.0.91 167 3/26/2025
1.0.90 497 3/26/2025
1.0.89 506 3/25/2025
1.0.88 506 3/25/2025
1.0.86 224 3/19/2025
1.0.85 180 3/19/2025
1.0.84 205 3/13/2025
1.0.83 194 3/13/2025
1.0.82 185 3/12/2025
1.0.81 190 3/12/2025
1.0.80 194 3/12/2025
1.0.79 257 3/6/2025
1.0.78 244 3/6/2025
1.0.77 251 3/6/2025
1.0.76 239 3/6/2025
1.0.75 245 3/3/2025
1.0.74 348 2/27/2025
1.0.73 146 2/27/2025
1.0.72 148 2/27/2025