using Core.Blueprint.Common.DependencyInjection; using Core.Blueprint.SQLServer.Runtime; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; namespace Core.Blueprint.SQLServer.DependencyInjection; /// /// Registers runtime sql server integration defaults for blueprint consumers. /// public static class BlueprintSqlServerServiceCollectionExtensions { /// /// Adds sql server runtime settings and baseline runtime services. /// /// Service collection. /// Logical connection name. /// Service collection for fluent chaining. public static IServiceCollection AddBlueprintSqlServerModule( this IServiceCollection services, string connectionName = "DefaultConnection") { services.AddBlueprintRuntimeCore(); services.TryAddSingleton(new BlueprintSqlServerRuntimeSettings(ResolveConnectionName(connectionName))); return services; } private static string ResolveConnectionName(string connectionName) { if (!string.IsNullOrWhiteSpace(connectionName)) { return connectionName; } return "DefaultConnection"; } }