Example #1
0
 private static void UpdateAnalogValue()
 {
     lock (OPCObjects.OPCLocker)
     {
         lock (OPCObjects.SQLLocker)
         {
             using (var context = new MyDBContext())
             {
                 foreach (var analogvalue in OPCObjects.AnalogValues)
                 {
                     var entitys = context.AnalogValue.Where(e => e.Path == analogvalue.Path);
                     foreach (var entity in entitys)
                     {
                         entity.Value = analogvalue.Value;
                         context.AnalogValue.Update(entity);
                         var newlog = new AnalogLog
                         {
                             dateTime = DateTime.Now,
                             Name     = entity.Name,
                             Value    = analogvalue.Value
                         };
                         context.AnalogLog.Add(newlog);
                     }
                 }
                 context.SaveChanges();
                 context.Dispose();
             }
         }
     }
 }
Example #2
0
        public async Task <LogResult> FilterAsync(AnalogLog log, IEvaluable <LogEntry> filter)
        {
            var logs = log != null
                ? await log.Entries.FilterAsync(filter)
                : Enumerable.Empty <LogEntry>();

            return(await Task.Factory.StartNew(() => LogResult.Build(logs.ToList())));
        }
Example #3
0
        public Task <LogResult> Filter(AnalogLog logs)
        {
            var filter = Root.Rule.GetFilter();

            return(_filterEngine.FilterAsync(logs, filter));
        }