Class ServiceCollectionExtensions
- Namespace
- CivitaiSharp.Tools.Extensions
- Assembly
- CivitaiSharp.Tools.dll
Extension methods for registering Civitai download and hashing services.
public static class ServiceCollectionExtensions
- Inheritance
-
ServiceCollectionExtensions
- Inherited Members
Methods
AddCivitaiDownloads(IServiceCollection)
Adds Civitai download and file hashing services with default configuration.
public static IServiceCollection AddCivitaiDownloads(this IServiceCollection services)
Parameters
servicesIServiceCollectionThe service collection to add services to.
Returns
- IServiceCollection
The service collection for chaining.
Remarks
This method registers the following services:
- IFileHashingService - For computing file hashes (SHA256, SHA512, BLAKE3, CRC32)
- IDownloadService - For downloading images and model files
Default options use the system temporary directory for downloads. Use one of the configuration overloads to customize behavior.
Exceptions
- ArgumentNullException
Thrown when
servicesis null.
AddCivitaiDownloads(IServiceCollection, IConfiguration)
Adds Civitai download and file hashing services with configuration from an IConfiguration section.
public static IServiceCollection AddCivitaiDownloads(this IServiceCollection services, IConfiguration configuration)
Parameters
servicesIServiceCollectionThe service collection to add services to.
configurationIConfigurationThe configuration section containing download options.
Returns
- IServiceCollection
The service collection for chaining.
Remarks
Binds options from the configuration section. Expected structure:
{
"Images": {
"BaseDirectory": "C:\\Downloads\\Images",
"PathPattern": "{BaseModel}/{Username}/{Id}.{Extension}",
"OverwriteExisting": false
},
"Models": {
"BaseDirectory": "C:\\Models",
"PathPattern": "{ModelType}/{FileName}",
"OverwriteExisting": true,
"VerifyHash": true,
"HashAlgorithm": "Sha256"
}
}
Exceptions
- ArgumentNullException
Thrown when
servicesorconfigurationis null.
AddCivitaiDownloads(IServiceCollection, Action<DownloadOptions>)
Adds Civitai download and file hashing services with programmatic configuration.
public static IServiceCollection AddCivitaiDownloads(this IServiceCollection services, Action<DownloadOptions> configure)
Parameters
servicesIServiceCollectionThe service collection to add services to.
configureAction<DownloadOptions>An action to configure the download options.
Returns
- IServiceCollection
The service collection for chaining.
Exceptions
- ArgumentNullException
Thrown when
servicesorconfigureis null.