using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using RainCrab.Plugins.AspNet; namespace InventoryContact; public class DirectContactPlugin : IWebPlugin { public Task ConfigureAsync(WebPluginLoadContext loadContext) { var environment = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); if (environment is null) { throw new ApplicationException("ASPNETCORE_ENVIRONMENT is not defined"); } loadContext.ApplicationBuilder.Configuration.AddJsonFile("Plugins/InventoryContact/pluginsettings.json"); loadContext.ApplicationBuilder.Configuration.AddJsonFile($"Plugins/InventoryContact/pluginsettings.{environment}.json", true); loadContext.ApplicationBuilder.Services.AddControllersWithViews() .AddApplicationPart(typeof(DirectContactPlugin).Assembly); return Task.CompletedTask; } public Task ShutdownAsync(WebPluginLoadContext loadContext) { return Task.CompletedTask; } }