NachtWiesel.Web.Files.Minio 8.0.0

NachtWiesel.Web.Files.Minio

NuGet Version

Небольшая библиотека для упрошённой работы с файлами через S3 Minio-like при разработке веб-приложений и не только.

Представлено 3 инструмента:

  • MinioFileReaderService - сервис чтения файлов.

    Фичи: чтение и сразу стриминг в HttpResponse.

  • MinioFileWriterService - сервис создания файлов.

    Фичи: автоматическое присвоение Guid (с проверкой на существование) при создании файла, запись из IFormFile, запись из IBrowserFile

  • MinioArchiverService - сервис создания архивов.

    Фичи: создание и стриминг архива без обращения к диску (на запись) и оптимизированным потреблением оперативной памяти.

Для использования инструментов необходима возможность получения сервиса через DependencyInjection.

Настройка

Для настройки необходимо создать конфигурацию и присвоить ей имя (именно оно передётся первым параметром).

В настройках всех сервисов есть несколько паметров:

Эндпоинт вашего S3 Minio-like сервиса

string Endpoint

Access-ключ

string AccessKey

Secret-ключ

string SecretKey

Начало пути которое будет автоматически приписываться перед filePath при любой операцией (этот параметр не обязателен)

string BasePath

Имя бакета с которым будет вестись работа

string BucketName

Далее следуют примеры настройки:

public string Endpoint { get; set; } = null!; public string AccessKey { get; set; } = null!; public string SecretKey { get; set; } = null!; public string BasePath { get; set; } = null!; public string BucketName { get; set; } = null!;

FileReaderService

builder.Services.AddMinioFileServices("STORAGE", x =>
{
    x.Endpoint = "minio.nachtwiesel.ru";
    x.AccessKey = "access";
    x.SecretKey = "secret";
    x.BasePath = "/BasicFiles";
    x.BucketName = "testing-bucket";
});

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

  1. Внедрите зависимость IFileWriterFactory/IFileReaderFactory/IArchiverFactory в ваш сервис
  2. Вызовите метод Create("Сюда вставьте название конфигурации")
  3. Пользуйтесь

No packages depend on NachtWiesel.Web.Files.Minio.

Перенос библиотеки

.NET 8.0

Version Downloads Last updated
9.0.2 3 10.11.2025
8.0.2 4 21.09.2025
8.0.1 3 23.09.2025
8.0.0 3 23.09.2025