55 lines
1.7 KiB
C#
55 lines
1.7 KiB
C#
using DIDemoLib;
|
|
using Microsoft.EntityFrameworkCore;
|
|
using Microsoft.Extensions.Configuration;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Microsoft.Extensions.Hosting;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Configuration;
|
|
using System.Linq;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using WinFormDiApp.DAL;
|
|
using WinFormDiApp.BL;
|
|
using WinFormDiApp.BLI;
|
|
using WinFormDiApp.BLR;
|
|
|
|
namespace WinFormDiApp
|
|
{
|
|
public static class ContainerConfig
|
|
{
|
|
|
|
public static IHost? Configure(IHostBuilder hostBuilder)
|
|
{
|
|
var configuration = new ConfigurationBuilder()
|
|
.SetBasePath(Directory.GetCurrentDirectory())
|
|
.AddEnvironmentVariables()
|
|
.AddJsonFile("appsettings.json")
|
|
.Build();
|
|
|
|
|
|
var builder = hostBuilder // new HostBuilder()
|
|
.ConfigureServices((_, services) =>
|
|
{
|
|
var conn = configuration.GetConnectionString("DatabaseConnection");
|
|
services
|
|
.AddDbContext<ApplicationDbContext>(options =>
|
|
options.UseSqlite(conn))
|
|
.AddTransient<IMessages, Messages>()
|
|
.AddTransient<IAccountRecordRepository,AccountRecordRepository>()
|
|
.AddTransient<IMemberRepository,MemberRepository>()
|
|
.AddTransient<IReadingIn, ReadingIn>()
|
|
.AddTransient<IExcellent, Excellent>()
|
|
.AddTransient<MainWindow>()
|
|
.AddTransient<frmReadPayments>()
|
|
.AddTransient<frmPayments>();
|
|
|
|
});
|
|
return builder.Build();
|
|
}
|
|
|
|
|
|
}
|
|
}
|