Пример #1
0
        private void OneMinuteMark(object sender, ElapsedEventArgs e)
        {
            // add a new entry to timedate table
            var newtime = new TimeDateEntity()
            {
                year   = (byte)(DateTime.Now.Year - 2000),
                month  = (byte)DateTime.Now.Month,
                day    = (byte)DateTime.Now.Day,
                hour   = (byte)DateTime.Now.Hour,
                minute = (byte)DateTime.Now.Minute
            };

            context.Dates.Add(newtime);
            context.SaveChanges();


            // add sensor recordings


            //add meter recordings
            foreach (var m in Meters)
            {
                MeterRecordingEntity meterdata = m.GetDataForDataBase();
                meterdata.TimeDateId = newtime.Id;
                context.MeterRecordings.Add(meterdata);

                m.Reset();
            }

            //save changes
            context.SaveChanges();
            Console.WriteLine("Saved To DataBase");
        }
Пример #2
0
        public MeterRecordingEntity GetDataForDataBase()
        {
            MeterRecordingEntity mr = new MeterRecordingEntity();

            mr.activeEnergy      = (int)(1000 * (totalActiveEnergy[1] - totalActiveEnergy[0]));
            mr.reactiveEnergy    = (int)(1000 * (totalReactiveEnergy[1] - totalReactiveEnergy[0]));
            mr.current           = Current.Average();
            mr.frequency         = Frequency.Average();
            mr.voltage           = Voltage.Average();
            mr.powerFactor       = (byte)(100 * PowerFactor.Average());
            mr.peakActivePower   = ActivePower;
            mr.peakReactivePower = ReactivePower;
            mr.MeterId           = Id;

            return(mr);
        }