using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; namespace ZB.MOM.WW.OtOpcUa.Configuration; public static class ServiceCollectionExtensions { public const string ConnectionStringName = "ConfigDb"; /// /// Registers for /// using the connection string named ConfigDb from . /// public static IServiceCollection AddOtOpcUaConfigDb(this IServiceCollection services, IConfiguration configuration) { var connectionString = configuration.GetConnectionString(ConnectionStringName) ?? throw new InvalidOperationException( $"Connection string '{ConnectionStringName}' is required. Add it to appsettings.json or the OTOPCUA_CONFIG_CONNECTION env var."); services.AddDbContextFactory(opt => opt.UseSqlServer(connectionString)); return services; } }