Пример #1
0
        // We initialiseren een 'Alert' met het toewijzen van een 'AlertInstelling' adhv een 'Id'
        // ook voegen het moment van creatie toe ('CreatedOn')
        // 'AlertContent' kan een string zijn met informatie om te verzenden naar een gebruiker


        public void AddAlert(string alertContent, int alertInstellingId)
        {
            InitNonExistingRepo();

            IEnumerable <AlertInstelling> fluctuations = repo.ReadValueFluctuations();
            List <AlertInstelling>        Ais          = fluctuations.ToList();

            Ais.AddRange(repo.ReadHogerLagers().ToList());
            Ais.AddRange(repo.ReadPositiefNegatiefs().ToList());

            AlertInstelling ai    = Ais.FirstOrDefault(v => v.AlertInstellingId == alertInstellingId);
            Alert           alert = new Alert()
            {
                AlertContent    = alertContent,
                AlertInstelling = ai,
                CreatedOn       = DateTime.Now
            };
            //alert toevoegen aan de ICollection van 'AlertInstelling'
            var alertColl = ai.Alerts;

            if (alertColl != null)
            {
                ai.Alerts = alertColl.ToList();
            }
            else
            {
                ai.Alerts = new Collection <Alert>();
            }

            ai.Alerts.Add(alert);

            //eerst alert creëren zodat deze een PK toegewegen krijgt
            repo.AddingAlert(alert);
            //dan de AlertInstelling updaten met de nieuwe 'Alert'
            repo.UpdateAlertInstelling(ai);
        }