diff --git a/src/Umbraco.Cms.Persistence.EFCore/Extensions/UmbracoEFCoreServiceCollectionExtensions.cs b/src/Umbraco.Cms.Persistence.EFCore/Extensions/UmbracoEFCoreServiceCollectionExtensions.cs index d7da8a65fe8c..e2d832d811f1 100644 --- a/src/Umbraco.Cms.Persistence.EFCore/Extensions/UmbracoEFCoreServiceCollectionExtensions.cs +++ b/src/Umbraco.Cms.Persistence.EFCore/Extensions/UmbracoEFCoreServiceCollectionExtensions.cs @@ -81,11 +81,11 @@ public static void UseDatabaseProvider(this DbContextOptionsBuilder builder, str } /// - /// Sets the database provider to use based on the Umbraco connection string. + /// Gets the Umbraco connection string and provider name. /// - /// /// - public static void UseUmbracoDatabaseProvider(this DbContextOptionsBuilder builder, IServiceProvider serviceProvider) + /// + public static ConnectionStrings GetUmbracoConnectionString(this IServiceProvider serviceProvider) { ConnectionStrings connectionStrings = serviceProvider.GetRequiredService>().CurrentValue; @@ -99,12 +99,32 @@ public static void UseUmbracoDatabaseProvider(this DbContextOptionsBuilder build if (string.IsNullOrEmpty(connectionStrings.ProviderName)) { Log.Warning("No database provider was set. ProviderName is null"); - return; } if (string.IsNullOrEmpty(connectionStrings.ConnectionString)) { Log.Warning("No database provider was set. Connection string is null"); + } + + return connectionStrings; + } + + /// + /// Sets the database provider to use based on the Umbraco connection string. + /// + /// + /// + public static void UseUmbracoDatabaseProvider(this DbContextOptionsBuilder builder, IServiceProvider serviceProvider) + { + ConnectionStrings connectionStrings = serviceProvider.GetUmbracoConnectionString(); + + if (string.IsNullOrEmpty(connectionStrings.ProviderName)) + { + return; + } + + if (string.IsNullOrEmpty(connectionStrings.ConnectionString)) + { return; }