Leitungen können nun bearbeitet werden
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.HostBuilders
|
||||
{
|
||||
public static class AddConfigurationHostBuilderExtensions
|
||||
{
|
||||
public static IHostBuilder AddConfiguration(this IHostBuilder host)
|
||||
{
|
||||
host.ConfigureAppConfiguration(c =>
|
||||
{
|
||||
c.AddJsonFile("appsettings.json");
|
||||
c.AddEnvironmentVariables();
|
||||
});
|
||||
return host;
|
||||
}
|
||||
}
|
||||
}
|
||||
41
DaSaSo.Wpf/HostBuilders/AddDbContextHostBuilderExtensions.cs
Normal file
41
DaSaSo.Wpf/HostBuilders/AddDbContextHostBuilderExtensions.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using DaSaSo.EntityFramework;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.HostBuilders
|
||||
{
|
||||
public static class AddDbContextHostBuilderExtensions
|
||||
{
|
||||
public static IHostBuilder AddDBContext(this IHostBuilder host)
|
||||
{
|
||||
host.ConfigureServices((context,services) =>
|
||||
{
|
||||
string connectionString = "";
|
||||
Action<DbContextOptionsBuilder> configureDbContext = null;
|
||||
string databaseToUse = context.Configuration.GetConnectionString("databaseToUse");
|
||||
if(databaseToUse.Equals("default"))
|
||||
{
|
||||
connectionString = context.Configuration.GetConnectionString("default");
|
||||
configureDbContext = o => o.UseNpgsql(connectionString);
|
||||
}
|
||||
else if(databaseToUse.Equals("sqlite"))
|
||||
{
|
||||
connectionString = context.Configuration.GetConnectionString("sqlite");
|
||||
configureDbContext = o => o.UseSqlite(connectionString);
|
||||
}
|
||||
|
||||
|
||||
services.AddDbContext<DaSaSoDbContext>(configureDbContext);
|
||||
services.AddSingleton<DaSaSoDbContextFactory>(new DaSaSoDbContextFactory(configureDbContext));
|
||||
});
|
||||
return host;
|
||||
}
|
||||
}
|
||||
}
|
||||
37
DaSaSo.Wpf/HostBuilders/AddServicesHostBuilderExtensions.cs
Normal file
37
DaSaSo.Wpf/HostBuilders/AddServicesHostBuilderExtensions.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Domain.Services.BuildingsiteServices;
|
||||
using DaSaSo.Domain.Services.ProjectServices;
|
||||
using DaSaSo.Domain.Services.SewerObjectService;
|
||||
using DaSaSo.Domain.Services.SewerPointServices;
|
||||
using DaSaSo.EntityFramework.Services;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.HostBuilders
|
||||
{
|
||||
public static class AddServicesHostBuilderExtensions
|
||||
{
|
||||
public static IHostBuilder AddServices(this IHostBuilder host)
|
||||
{
|
||||
host.ConfigureServices(services =>
|
||||
{
|
||||
services.AddSingleton<IDataService<Client>, ClientDataService>();
|
||||
services.AddSingleton<IDataService<Project>, ProjectDataService>();
|
||||
services.AddSingleton<IDataService<Buildingsite>, BuildingsiteDataService>();
|
||||
services.AddSingleton<IDataService<SewerObject>, SewerObjectDataService>();
|
||||
services.AddSingleton<IDataService<SewerPoint>, SewerpointDataService>();
|
||||
services.AddSingleton<IProjectService, ProjectService>();
|
||||
services.AddSingleton<IBuildingsiteService, BuildingsiteService>();
|
||||
services.AddSingleton<ISewerObjectService, SewerObjectService>();
|
||||
services.AddSingleton<ISewerpointService, SewerpointService>();
|
||||
});
|
||||
return host;
|
||||
}
|
||||
}
|
||||
}
|
||||
27
DaSaSo.Wpf/HostBuilders/AddStoresHostBuilderExtensions.cs
Normal file
27
DaSaSo.Wpf/HostBuilders/AddStoresHostBuilderExtensions.cs
Normal file
@@ -0,0 +1,27 @@
|
||||
using DaSaSo.ViewModel.Interface;
|
||||
using DaSaSo.ViewModel.State.ActualState;
|
||||
using DaSaSo.ViewModel.State.Navigation;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.HostBuilders
|
||||
{
|
||||
public static class AddStoresHostBuilderExtensions
|
||||
{
|
||||
public static IHostBuilder AddStores(this IHostBuilder host)
|
||||
{
|
||||
host.ConfigureServices(services =>
|
||||
{
|
||||
services.AddSingleton<IActualProject, ActualProject>();
|
||||
services.AddSingleton<IMainWindowNavigator, MainWindowNavigator>();
|
||||
services.AddSingleton<ISewerMainNavigator, SewerMainNavigator>();
|
||||
});
|
||||
return host;
|
||||
}
|
||||
}
|
||||
}
|
||||
121
DaSaSo.Wpf/HostBuilders/AddViewModelsHostBuilderExtensions.cs
Normal file
121
DaSaSo.Wpf/HostBuilders/AddViewModelsHostBuilderExtensions.cs
Normal file
@@ -0,0 +1,121 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Domain.Services.BuildingsiteServices;
|
||||
using DaSaSo.Domain.Services.ProjectServices;
|
||||
using DaSaSo.Domain.Services.SewerObjectService;
|
||||
using DaSaSo.Domain.Services.SewerPointServices;
|
||||
using DaSaSo.ViewModel;
|
||||
using DaSaSo.ViewModel.Factories;
|
||||
using DaSaSo.ViewModel.Interface;
|
||||
using DaSaSo.ViewModel.State.Navigation;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.HostBuilders
|
||||
{
|
||||
public static class AddViewModelsHostBuilderExtensions
|
||||
{
|
||||
public static IHostBuilder AddViewModels(this IHostBuilder host)
|
||||
{
|
||||
host.ConfigureServices(services =>
|
||||
{
|
||||
|
||||
services.AddTransient<MainWindowViewModel>();
|
||||
services.AddSingleton<ClientListViewModel>();
|
||||
|
||||
services.AddSingleton<CreateViewModel<HomeViewModel>>(services =>
|
||||
{
|
||||
return () => new HomeViewModel();
|
||||
});
|
||||
services.AddSingleton<CreateViewModel<ClientEditViewModel>>(services =>
|
||||
{
|
||||
return () => new ClientEditViewModel(
|
||||
services.GetRequiredService<IDataService<Client>>(),
|
||||
services.GetRequiredService<IActualProject>(),
|
||||
new ViewModelDelegateRenavigator(
|
||||
services.GetRequiredService<IMainWindowNavigator>()
|
||||
));
|
||||
});
|
||||
services.AddSingleton<CreateViewModel<HomeViewModel>>(services =>
|
||||
{
|
||||
return () => new HomeViewModel();
|
||||
});
|
||||
services.AddTransient<CreateViewModel<SewerStammdatenViewModel>>(services =>
|
||||
{
|
||||
return () => new SewerStammdatenViewModel(
|
||||
services.GetRequiredService<IActualProject>()
|
||||
);
|
||||
});
|
||||
services.AddSingleton<CreateViewModel<SewerDamageListViewModel>>(services =>
|
||||
{
|
||||
return () => new SewerDamageListViewModel();
|
||||
});
|
||||
|
||||
services.AddSingleton<CreateViewModel<ClientListViewModel>>(services =>
|
||||
{
|
||||
return () => new ClientListViewModel(
|
||||
services.GetRequiredService<IDataService<Client>>(),
|
||||
services.GetRequiredService<IActualProject>(),
|
||||
new ViewModelDelegateRenavigator(
|
||||
services.GetRequiredService<IMainWindowNavigator>()
|
||||
));
|
||||
});
|
||||
services.AddSingleton<CreateViewModel<SewerMainListViewModel>>(services =>
|
||||
{
|
||||
return () => new SewerMainListViewModel(
|
||||
services.GetRequiredService<IDataService<SewerObject>>(),
|
||||
services.GetRequiredService<ISewerMainNavigator>(),
|
||||
services.GetRequiredService<IActualProject>(),
|
||||
services.GetRequiredService<IViewModelSewerMainFactory>(),
|
||||
new ViewModelDelegateRenavigator(
|
||||
services.GetRequiredService<IMainWindowNavigator>()
|
||||
),
|
||||
services.GetRequiredService<ISewerObjectService>(),
|
||||
services.GetRequiredService<ISewerpointService>()
|
||||
);
|
||||
});
|
||||
services.AddSingleton<CreateViewModel<ProjectListViewModel>>(services =>
|
||||
{
|
||||
return () => new ProjectListViewModel(
|
||||
services.GetRequiredService<IDataService<Project>>(),
|
||||
services.GetRequiredService<IActualProject>(),
|
||||
new ViewModelDelegateRenavigator(
|
||||
services.GetRequiredService<IMainWindowNavigator>()),
|
||||
services.GetRequiredService<IProjectService>()
|
||||
|
||||
);
|
||||
});
|
||||
|
||||
services.AddSingleton<CreateViewModel<BuildingsiteListViewModel>>(services =>
|
||||
{
|
||||
return () => new BuildingsiteListViewModel(
|
||||
services.GetRequiredService<IDataService<Buildingsite>>(),
|
||||
services.GetRequiredService<IActualProject>(),
|
||||
new ViewModelDelegateRenavigator(
|
||||
services.GetRequiredService<IMainWindowNavigator>()),
|
||||
services.GetRequiredService<IBuildingsiteService>()
|
||||
);
|
||||
});
|
||||
|
||||
services.AddSingleton<CreateViewModel<SewerObjectListViewModel>>(services =>
|
||||
{
|
||||
return () => new SewerObjectListViewModel(
|
||||
services.GetRequiredService<IDataService<SewerObject>>(),
|
||||
services.GetRequiredService<IActualProject>(),
|
||||
services.GetRequiredService<ISewerObjectService>()
|
||||
);
|
||||
});
|
||||
|
||||
services.AddSingleton<IViewModelAbstractFactory, MainWindowViewModelFactory>();
|
||||
services.AddSingleton<IViewModelSewerMainFactory, SewerWindowViewModelFactory>();
|
||||
});
|
||||
return host;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user