public async Task <IActionResult> Edit(Guid id, [Bind("id,device,timestamps,timestampms,sendsorvalue")] App_SensorData app_SensorData) { if (id != app_SensorData.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(app_SensorData); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!App_SensorDataExists(app_SensorData.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(app_SensorData)); }
static DateTime GetLastExportDt() { if (_LastExportDt == DateTime.MinValue) { FileStream fs = new FileStream("LastExportDt.txt", FileMode.OpenOrCreate); var file = new System.IO.StreamReader(fs); string s = file.ReadLine(); fs.Close(); if (string.IsNullOrEmpty(s)) { App_SensorData first = Startup._GVContext.App_SensorData.First <App_SensorData>(); if (first != null) { _LastExportDt = first.createtime; } } else { _LastExportDt = DateTime.Parse(s); } } return(_LastExportDt); }
public List <App_SensorData> QueryTimeIP(string ip, DateTime startdt, DateTime enddt) { string sql = string.Format("SELECT * FROM app_sensordata WHERE device='{0}' and createtime between '{1}' and '{2}'", ip, startdt.ToString("yyyy/MM/dd HH:mm:ss"), enddt.ToString("yyyy/MM/dd HH:mm:ss")); MySqlCommand cmd = new MySqlCommand(sql, mConnection); MySqlDataReader rdr = cmd.ExecuteReader(); List <App_SensorData> list = new List <App_SensorData>(); while (rdr.Read()) { Console.WriteLine(rdr[0] + " -- " + rdr[1]); App_SensorData data = new App_SensorData(); data.Id = Guid.Parse(rdr[0].ToString()); data.createtime = DateTime.Parse(rdr[1].ToString()); data.device = rdr[2].ToString(); data.gain = Convert.ToInt16(rdr[3].ToString()); data.rate = Convert.ToInt16(rdr[4].ToString()); data.sensorvalue = (byte[])rdr[5]; data.timestampms = Convert.ToInt16(rdr[6].ToString()); data.timestamps = Convert.ToInt16(rdr[7].ToString()); list.Add(data); } rdr.Close(); return(list); }
public async Task <IActionResult> Create([Bind("id,device,timestamps,timestampms,sendsorvalue")] App_SensorData app_SensorData) { if (ModelState.IsValid) { _context.Add(app_SensorData); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(app_SensorData)); }
public void Insert(string ip, UInt32 timestamps, UInt32 timestampms, UInt16 rate, UInt16 gain, byte[] bufferdata) { DeviceCache dv = GetDevice(ip); DateTime dt = DateTime.Now; App_SensorData data = new App_SensorData(); data.createtime = dt; data.device = ip; data.gain = (short)gain; data.rate = (short)rate; data.sensorvalue = bufferdata; data.timestampms = (int)timestampms; data.timestamps = (int)timestamps; dv.AddMiniteCache(data); }
public void AddMiniteCache(App_SensorData data) { if (_MiniteCache.Count == 0) { MiniteCache newminite = new MiniteCache(); DateTime mtime = new DateTime( data.createtime.Year, data.createtime.Month, data.createtime.Day, data.createtime.Hour, data.createtime.Minute, 0, 0); newminite._Minite = mtime; _MiniteCache.Enqueue(newminite); newminite._DataList.Add(data); return; } else { } MiniteCache last = _MiniteCache.Last <MiniteCache>(); DateTime firstdt = last._Minite; DateTime startdt = new DateTime( firstdt.Year, firstdt.Month, firstdt.Day, firstdt.Hour, firstdt.Minute, 0, 0); DateTime enddt = startdt.AddMinutes(1); if (data.createtime > enddt) { DateTime newdt = new DateTime( data.createtime.Year, data.createtime.Month, data.createtime.Day, data.createtime.Hour, data.createtime.Minute, 0, 0); MiniteCache newminite = new MiniteCache(); newminite._Minite = newdt; _MiniteCache.Enqueue(newminite); newminite._DataList.Add(data); } else { last._DataList.Add(data); } }