public void Configure( IApplicationBuilder app, IHostApplicationLifetime lifetime, IBrowserLauncher browserLauncher, IDirectoryAccessor directoryAccessor, PackageRegistry packageRegistry) { using (var operation = Log.OnEnterAndConfirmOnExit()) { lifetime.ApplicationStopping.Register(() => _disposables.Dispose()); ConfigureForOrchestratorProxy(app); // Serve Blazor on the /LocalCodeRunner/blazor-console prefix app.Map("/LocalCodeRunner/blazor-console", blazor => { blazor.UseClientSideBlazorFiles <MLS.Blazor.Startup>(); blazor.UseRouting(); blazor.UseEndpoints(endpoints => { endpoints.MapFallbackToClientSideBlazor <MLS.Blazor.Startup>("index.html"); }); }); var budget = new Budget(); _disposables.Add(() => budget.Cancel()); BlazorPackageConfiguration.Configure(app, app.ApplicationServices, packageRegistry, budget, !StartupOptions.IsLanguageService); app.UseMvc() .UseDefaultFiles() .UseStaticFilesFromToolLocationAndRootDirectory(directoryAccessor.GetFullyQualifiedRoot()); operation.Succeed(); if (StartupOptions.Mode == StartupMode.Try && !StartupOptions.IsJupyter) { var uri = new Uri(app.ServerFeatures.Get <IServerAddressesFeature>().Addresses.First()); Clock.Current .Schedule(_ => LaunchBrowser(browserLauncher, directoryAccessor, uri), TimeSpan.FromSeconds(1)); } } }
public void Configure( IApplicationBuilder app, IApplicationLifetime lifetime, IBrowserLauncher browserLauncher, IDirectoryAccessor directoryAccessor, PackageRegistry packageRegistry) { using (var operation = Log.OnEnterAndConfirmOnExit()) { lifetime.ApplicationStopping.Register(() => _disposables.Dispose()); ConfigureForOrchestratorProxy(app); app.Map("/LocalCodeRunner/blazor-console", builder => { builder.UsePathBase("/LocalCodeRunner/blazor-console/"); builder.EnableCachingBlazorContent(); builder.UseBlazor <MLS.Blazor.Program>(); }); app.Map("/LocalCodeRunner/humanizer.api", builder => { builder.UsePathBase("/LocalCodeRunner/humanizer/"); builder.EnableCachingBlazorContent(); builder.UseBlazor <MLS.HumanizerRunner.Program>(); }); var budget = new Budget(); _disposables.Add(() => budget.Cancel()); BlazorPackageConfiguration.Configure(app, app.ApplicationServices, packageRegistry, budget, !StartupOptions.IsLanguageService); app.UseDefaultFiles() .UseStaticFilesFromToolLocation() .UseRouter(new StaticFilesProxyRouter()) .UseMvc(); operation.Succeed(); if (StartupOptions.Mode == StartupMode.Try) { Clock.Current .Schedule(_ => LaunchBrowser(browserLauncher, directoryAccessor), TimeSpan.FromSeconds(1)); } } }