using FahrzeugDatenBank; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using System.IO; using System.Windows; namespace FahzeugWPF { /// /// Interaction logic for App.xaml /// public partial class App : Application { public static ServiceProvider ServiceProvider { get; private set; } public App() { IConfiguration configuration = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json", optional: false, reloadOnChange: true).Build(); ServiceCollection services = new ServiceCollection(); services.AddScoped(sp => new Konfigurationsleser(configuration)); services.AddScoped(sp => new FahrzeugRepository(sp.GetRequiredService().LiesDBVerebindung())); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddSingleton(); services.AddSingleton(); ServiceProvider = services.BuildServiceProvider(); } protected override void OnStartup(StartupEventArgs e) { this.MainWindow = ServiceProvider.GetService(); this.MainWindow.DataContext = ServiceProvider.GetService(); this.MainWindow.Show(); } private string GetConnectionString() { return "Server=localhost;User ID=admin;Password=admin;Database=FahrzeugDB"; } } }