2025-09-05 16:24:44 +02:00

46 lines
1.6 KiB
C#

using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Configuration;
using Microsoft.EntityFrameworkCore;
using System.IO;
using System.Windows;
namespace FahrzeugProjekt
{
public partial class App : Application
{
public static IServiceProvider ServiceProvider { get; private set; }
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
// Configuration laden
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
IConfiguration configuration = builder.Build();
string connectionString = configuration.GetConnectionString("FahrzeugProjektConnection");
// Services konfigurieren
var services = new ServiceCollection();
// DbContext registrieren
services.AddDbContext<FahrzeugProjektKontext>(options =>
options.UseSqlServer(connectionString));
// Alle Fenster registrieren
services.AddTransient<MainWindow>();
services.AddTransient<FahrzeugEintragenWindow>();
services.AddTransient<FahrzeugeAnzeigenWindow>();
// Service Provider erstellen
ServiceProvider = services.BuildServiceProvider();
// MainWindow manuell erstellen und anzeigen
var hauptFenster = ServiceProvider.GetRequiredService<MainWindow>();
hauptFenster.Show();
}
}
}