Indice.Services 8.41.0

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

Indice.Services

A comprehensive library of infrastructure service abstractions and implementations for .NET applications. This package provides production-ready integrations with Azure services and popular third-party providers for common application needs.

NuGet

Installation

dotnet add package Indice.Services

Features

📁 File Storage

Store and retrieve files using different backing stores:

Implementation Description
FileServiceAzureStorage Azure Blob Storage
FileServiceLocal Local file system
FileServiceInMemory In-memory (for testing)
// Azure Blob Storage
services.AddFilesAzure(options => {
    options.ConnectionStringName = "StorageConnection";
    options.ContainerName = "my-container";
});

// Local file system
services.AddFilesLocal(options => {
    options.Path = "uploads";
});

📧 Email Services

Send emails through various providers with template rendering support:

Provider Service Name
SMTP EmailServiceSmtp
SendGrid EmailServiceSendGrid
SparkPost EmailServiceSparkpost
Brevo (Sendinblue) EmailServiceBrevo
// Auto-discover provider from configuration
services.AddEmailService(configuration);

Configuration (appsettings.json):

{
  "Email": {
    "Provider": "smtp",
    "Sender": "noreply@example.com",
    "SenderName": "My App",
    "SmtpHost": "smtp.example.com",
    "SmtpPort": 587
  }
}

📱 SMS Services

Send SMS messages through multiple gateway providers:

Provider Implementation
Apifon SmsServiceApifon
Apifon IM SmsServiceApifonIM
KapaTEL SmsServiceKapaTEL
Mstat SmsServiceMstat
SmsUP SmsServiceSmsUP
Twilio SmsServiceTwilio
Vonage SmsServiceVonage
Yuboto SmsServiceYuboto
Yuboto Omni SmsServiceYubotoOmni
Yuboto Viber SmsServiceYubotoOmniViber
services.AddSmsServiceApifon(configuration);

🔔 Push Notifications

Send push notifications via Azure Notification Hubs:

services.AddPushNotificationServiceAzure((sp, options) => {
    options.ConnectionString = "your-connection-string";
    options.NotificationHubPath = "your-hub-name";
});

📤 Event Dispatching

Dispatch events asynchronously using queue-based messaging:

Implementation Backing Store
EventDispatcherAzure Azure Queue Storage
EventDispatcherAzureServiceBus Azure Service Bus
EventDispatcherInMemory In-memory (for testing)
services.AddEventDispatcherAzure(configuration);

// Raise events
await eventDispatcher.RaiseEventAsync(new OrderCreatedEvent { OrderId = orderId });

🔒 Distributed Locking

Coordinate distributed operations using lease-based locking:

Implementation Backing Store
LockManagerAzure Azure Blob Storage leases
LockManagerInMemory In-memory (for testing)
services.AddLockManagerAzure(configuration);

// Acquire and use a lock
await using var lease = await lockManager.AcquireLock("my-resource", TimeSpan.FromSeconds(30));
if (lease.IsAcquired) {
    // Perform exclusive operation
}

📡 SignalR Proxy

Proxy SignalR connections through Azure SignalR Service:

services.AddSignalRProxyServices(configuration);

Configuration

Most services auto-configure from IConfiguration. Common connection string names:

Service Connection String Name
File Storage StorageConnection
Event Dispatcher StorageConnection
Lock Manager StorageConnection
Service Bus ServiceBusConnection

Dependencies

Target Frameworks

  • .NET 8.0
  • .NET 9.0

License

This project is licensed under the MIT License. See the LICENSE file for details.

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.  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 (8)

Showing the top 5 NuGet packages that depend on Indice.Services:

Package Downloads
Indice.AspNetCore

Package Description

Indice.Hosting

Package Description

Indice.Features.Messages.Core

Package Description

Indice.Features.Messages.Worker.Azure

Package Description

Indice.Features.Multitenancy.Worker.Azure

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
8.41.0 38 3/9/2026
8.40.0 90 3/6/2026
8.39.0 448 3/3/2026
8.38.0 894 2/17/2026
8.37.0 569 2/6/2026
8.36.0 945 1/28/2026
8.35.0 517 1/23/2026
8.34.0 524 1/19/2026
8.33.0 414 1/19/2026
8.32.0 925 1/13/2026
8.31.0 2,060 12/24/2025
8.30.0 1,488 12/18/2025
8.29.0 868 12/15/2025
8.28.0 618 12/15/2025
8.27.0 939 12/4/2025
8.26.0 1,969 11/18/2025
8.25.0 1,137 11/17/2025
8.24.0 1,007 11/13/2025
8.23.0 701 11/10/2025
8.22.0 1,407 11/7/2025
Loading failed