using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Hosting; using Umbraco.Cms.Core.Configuration.Models; using Umbraco.Cms.Core.DependencyInjection; namespace Umbraco.Extensions; /// /// Extension methods for . /// public static class WebApplicationBuilderExtensions { /// /// Creates an and registers basic Umbraco services. /// /// The builder. /// /// The Umbraco builder. /// public static IUmbracoBuilder CreateUmbracoBuilder(this WebApplicationBuilder builder) { // Configure Umbraco defaults, but ignore decorated host builder and // don't add runtime as hosted service (this is replaced by the explicit BootUmbracoAsync) builder.Host.ConfigureUmbracoDefaults(false); // Do not enable static web assets on production environments, // because the files are already copied to the publish output folder. if (builder.Configuration.GetRuntimeMode() != RuntimeMode.Production) { builder.WebHost.UseStaticWebAssets(); } return builder.Services.AddUmbraco(builder.Environment, builder.Configuration); } }