// Copyright (c) Microsoft Corporation. // Licensed under the MIT license. using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; using System.IO; namespace CPF.Razor { public static class CpfHost { public static IHostBuilder CreateDefaultBuilder() { // Inspired by Microsoft.Extensions.Hosting.Host, which can be seen here: // https://github.com/dotnet/extensions/blob/master/src/Hosting/Hosting/src/Host.cs // But slightly modified to work on all of Android, iOS, and UWP. var builder = new HostBuilder(); builder.UseContentRoot(Directory.GetCurrentDirectory()); builder.ConfigureLogging((hostingContext, logging) => { logging.AddConsole(configure => configure.DisableColors = true); logging.AddDebug(); logging.AddEventSourceLogger(); }) .UseDefaultServiceProvider((context, options) => { var isDevelopment = context.HostingEnvironment.IsDevelopment(); options.ValidateScopes = isDevelopment; options.ValidateOnBuild = isDevelopment; }); return builder; } } }