@page "/cocktails/{CocktailId}" @using CocktailWeb.Data @using Microsoft.AspNetCore.Components.Sections @using Microsoft.EntityFrameworkCore @inject IDbContextFactory DataContextFactory; Zurück @if (SelectedCocktail == null) {

Cocktail konnte nicht gefunden werden

} else {
...
@SelectedCocktail.Name

Zutaten:
    @foreach (var Zutat in SelectedCocktail.Cocktailflaschen.OrderBy(f => f.Reihenfolge)) { @if (MaschinenFiller != null && MaschinenFiller.Exists(f => f.Flasche == Zutat.Flasche)) {
  • @Zutat.Flasche?.Name (@Zutat.Menge ml)
  • } else { @* Zutat nicht in MaschinenFiller gefunden - Daher ist Maschine nicht damit bestückt*@
  • @Zutat.Flasche?.Name (@Zutat.Menge ml) (nicht geladen)
  • } }

@if (ValideMische) { } else { } } @code { [Parameter] public string? CocktailId { get; set; } private DbDataContext? _DataContext; private Cocktail? SelectedCocktail; private List? MaschinenFiller; private bool ValideMische = true; protected override async Task OnInitializedAsync() { int id = Convert.ToInt32(CocktailId); _DataContext ??= await DataContextFactory.CreateDbContextAsync(); if (_DataContext != null) { SelectedCocktail = _DataContext.Cocktails.Include(c => c.Cocktailflaschen).ThenInclude(cf => cf.Flasche).Single(c => c.Id == id); MaschinenFiller = _DataContext.Fillers.Include(f => f.Flasche).OrderBy(f => f.Pos).ToList(); } } }