Files
IntegrySmartWarehouse/Integry Smart Warehouse/Core/Domain/Impl/ISWContext.cs
2023-05-09 10:53:29 +02:00

56 lines
1.2 KiB
C#

using Autofac;
using Autofac.Extensions.DependencyInjection;
using Integry_Smart_Warehouse.Core.WebHost;
using Integry_Smart_Warehouse.Core.WebHost.Converter;
namespace Integry_Smart_Warehouse.Core.Domain.Impl;
public class ISWContext : IContext
{
public async Task Init()
{
}
public Task Start()
{
return CreateHostBuilder().Build().RunAsync();
}
private IHostBuilder CreateHostBuilder()
{
var builder = Host.CreateDefaultBuilder();
builder.UseServiceProviderFactory(new AutofacServiceProviderFactory())
.ConfigureContainer<ContainerBuilder>(configure => { configure.RegisterModule<ISWDataModule>(); });
builder.ConfigureWebHostDefaults(webHost =>
{
webHost.UseStartup<ISWWebHost>();
webHost.UseUrls("http://0.0.0.0:5000", "https://0.0.0.0:5001");
});
builder.ConfigureServices(services =>
{
var mvcBuilder = services.AddControllers();
mvcBuilder.AddJsonOptions(config =>
config.JsonSerializerOptions.Converters.Add(new JsonDateConverter()));
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
services.AddEndpointsApiExplorer();
services.AddSwaggerGen();
});
return builder;
}
public async Task Stop()
{
throw new NotImplementedException();
}
}