Files
SewerGenerator/SewerStammGen/HostBuilders/AddViewModelsHostBuilderExtensions.cs
2023-03-29 16:41:34 +02:00

49 lines
1.5 KiB
C#

using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using SewerStammGen.WPF.Interface;
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.Factories;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Security;
using System.Text;
using System.Threading.Tasks;
namespace SewerStammGen.HostBuilders
{
static class AddViewModelsHostBuilderExtensions
{
public static IHostBuilder AddViewModels(this IHostBuilder hostBuilder)
{
hostBuilder.ConfigureServices(services =>
{
services.AddTransient<MainWindowViewModel>();
services.AddSingleton<CreateViewModel<HomeViewModel>>(services =>
{
return () => new HomeViewModel();
});
services.AddSingleton<CreateViewModel<EditManHoleViewModel>>(services =>
{
return () => new EditManHoleViewModel();
});
services.AddSingleton<CreateViewModel<SewerConnectorViewModel>>(services =>
{
return () => new SewerConnectorViewModel();
});
services.AddSingleton<CreateViewModel<ProjektListViewModel>>(services =>
{
return () => new ProjektListViewModel();
});
services.AddSingleton<IViewModelAbstractFactory, MainWindowViewModelFactory>();
});
return hostBuilder;
}
}
}