private async void DropPackagedSolution(PackagedSolution packagedSolution) { using (var ctx = new AssistantContext()) { var conflictingOffersList = ctx.Offers .Where(o => o.PackagedSolution.Id == packagedSolution.Id) .Include(o => o.OfferInformation) .ToList(); if (conflictingOffersList.Any()) { var formattedOffersString = string.Join("\n", conflictingOffersList.Select(x => $"- {x.OfferInformation.Title} ({x.CreationDate})")); await _dialogCoordinator.ShowMessageAsync(this, "Fejl", $"Pakkeløsningen kan ikke slettes, da den findes i følgende tilbud:\n{formattedOffersString}"); return; } } // No conflicts, remove the packaged solution PackagedSolutions.Remove(packagedSolution); using (var ctx = new AssistantContext()) { ctx.PackagedSolutions.Attach(packagedSolution); ctx.PackagedSolutions.Remove(packagedSolution); ctx.SaveChanges(); } }
public void SelectPackagedSolutionById(int id) { SelectedPackagedSolution = PackagedSolutions.FirstOrDefault(p => p.Id == id); if (SelectedPackagedSolution == null) { return; } OnSolutionSelected(); }