28 lines
1.0 KiB
C#
28 lines
1.0 KiB
C#
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;
|
|
}
|
|
} |