using KanSan.Base; using KanSan.Base.Interfaces; using KanSan.Base.Interfaces.UI; using KanSan.Base.Models; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace KanSan.ViewModel { public class SchaedenListViewModel : ISchaedenListViewModel { private Sewer actualSelectedSewer; IUnitOfWork unitOfWork = new UnitOfWork(new KanSanContext()); private List schaeden; public List Schaeden { get => schaeden; } public SchaedenListViewModel(Sewer actualSelectedSewer) { this.actualSelectedSewer = actualSelectedSewer; schaeden = unitOfWork.SchaedenRepository.Get(x => x.Sewer.Equals(actualSelectedSewer)).ToList(); } public Schaeden NeueSchaden() { Guid guid = Guid.NewGuid(); Schaeden neueSchaden = new Schaeden() { GuidNr = guid, Sewer = actualSelectedSewer }; unitOfWork.SchaedenRepository.Update(neueSchaden,false); unitOfWork.Commit(); List res = unitOfWork.SchaedenRepository.Get(x => x.GuidNr.Equals(guid)).ToList(); if (res.Count < 1) throw new Exception("Der zuvor eingefügte Schäden konnte nicht gefunden werden"); return res.First(); } } }