BathhouseManagment/Program.cs

58 lines
2.1 KiB
C#

using Avalonia;
using System;
using BathHouseManagmet.Database;
using BathHouseManagmet.ViewModels;
using BathHouseManagmet.Views;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace BathHouseManagmet;
sealed class Program
{
// Initialization code. Don't use any Avalonia, third-party APIs or any
// SynchronizationContext-reliant code before AppMain is called: things aren't initialized
// yet and stuff might break.
[STAThread]
public static void Main(string[] args)
{
var host = Host.CreateDefaultBuilder()
.ConfigureServices((c, s) =>
{
s.AddTransient<MainWindow>();
s.AddTransient<MainWindowViewModel>();
s.AddTransient<OrderViewModel>();
s.AddTransient<OrderView>();
s.AddTransient<EmployeeViewModel>();
s.AddTransient<EmployeeView>();
s.AddTransient<ServiceViewModel>();
s.AddTransient<ServiceView>();
s.AddTransient<ZoneViewModel>();
s.AddTransient<ZoneView>();
s.AddTransient<DiscountViewModel>();
s.AddTransient<DiscountView>();
s.AddTransient<PositionViewModel>();
s.AddTransient<PositionView>();
s.AddTransient<ClientViewModel>();
s.AddTransient<ClientView>();
s.AddTransient<DiscountRepository>();
s.AddTransient<ClientRepository>();
s.AddTransient<EmployeeRepository>();
s.AddTransient<OrderRepository>();
s.AddTransient<PositionRepository>();
s.AddTransient<ZoneRepository>();
s.AddTransient<ServiceRepository>();
}).Build();
BuildAvaloniaApp(host.Services)
.StartWithClassicDesktopLifetime(args);
}
// Avalonia configuration, don't remove; also used by visual designer.
public static AppBuilder BuildAvaloniaApp(IServiceProvider serviceProvider)
=> AppBuilder.Configure(() => new App(serviceProvider))
.UsePlatformDetect()
.WithInterFont()
.LogToTrace();
}