static async Task Main(string[] args) { // Ein neuer Context wird erstellt. _schroedingerCtx = new SchroedingerContext(); Helper.PrintBlock("Bitte warten, der Datenbank-Context wird erstellt."); // Vor jedem Start wird sichergestellt, das der Context auf der Datenbank vorhanden ist. await _schroedingerCtx.Database.EnsureDeletedAsync(); await _schroedingerCtx.Database.EnsureCreatedAsync(); Helper.PrintBlock("Der Datenbank-Context wurde erfolgreich erstellt."); // Initialisierung der Services zur Interaktion mit dem Context. // Der CatService wird nicht verwendet, kann aber Katzen anhand des Namens liefern. _catService = new CatService(_schroedingerCtx); _boxService = new BoxService(_schroedingerCtx); // Wir fragen nach der Farbe. var boxColor = GetBoxColor(); // Wir fragen nach dem Namen. var catName = GetCatName(); // Wir erzeugen direkt im Methodenkörper ein geschachteltes Box-Objekt und fügen es dem Context hinzu. await _boxService.AddEntityAsync( new Box { BoxId = 1, Color = boxColor, Cat = new Cat { CatId = 1, Name = catName, IsAlive = new Random().Next(100) < 50 ? true : false } }); var count = await _boxService.SaveChangesAsync(); OpenBox(boxColor); Console.ReadLine(); }
public CatService(SchroedingerContext context) : base(context) { }
public BaseService(SchroedingerContext schroedingerCtx) { _schroedingerCtx = schroedingerCtx; Repository = _schroedingerCtx.Set <TEntity>(); }