using Contime.controller; using Contime.data; using Contime.model; using Contime.view; namespace Contime { internal static class Program { /// /// The main entry point for the application. /// [STAThread] static void Main() { // --- FIX: Initialize the SQLite provider --- SQLitePCL.Batteries.Init(); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); // --- Dependency Injection Setup --- // 1. Create the DataAccess layer var dataAccess = new DataAccess("contime.db"); dataAccess.InitializeDatabase(); // 2. Create the Model var model = new TimeTrackerModel(dataAccess); // 3. Create the View var view = new MainForm(); // 4. Create the Controller var controller = new TimeTrackerController(model, view); // 5. Run the application Application.Run(view); } } }