public DateTime GetCurrentDateByidBytable(string sensorId) { CurrentDataModel SensorsDataList = GetSensorIDCurrent(sensorId); if (SensorsDataList == null) { return(default);
/// <summary> /// 释放资源 /// </summary> protected override void Disposing() { //释放相关的资源 CurrentDataModel.PropertyChanged += CurrentDataModel_PropertyChanged; CurrentDataModel?.Dispose(); dbContext.Db.Close(); dbContext.Db.Dispose(); dbContext = null; LogHelper.Logger.Debug($"释放资源:{this.ToString()}"); }
public CurrentDataModel GetSensorIDCurrent(string sensorId) { string tableName = ""; List <CurrentDataModel> List = new List <CurrentDataModel>(); CurrentDataModel query = new CurrentDataModel(); switch (sensorId.Substring(0, 2)) { case "TS": tableName = "TMP_SENSOR"; break; case "LS": tableName = "LIGHT_SENSOR"; break; case "HS": tableName = "HUM_SENSOR"; break; case "AS": tableName = ""; var filter = Builders <MongoASModel> .Filter.Eq(x => x.sensorId, sensorId); MongoASModel asquery = new MongoASModel(); asquery = new DBManger().DataBase.GetCollection <MongoASModel>("AS_SENSOR").Find(filter).Limit(1).Sort(Builders <MongoASModel> .Sort.Descending("latest_checking_time")).FirstOrDefault(); query = new CurrentDataModel { sensorId = asquery.sensorId, current = asquery.C_AVG_PM25, latest_checking_time = asquery.latest_checking_time }; break; default: tableName = ""; break; } Debug.WriteLine("^^^^^" + tableName); //db collection if (!string.IsNullOrEmpty(tableName) && tableName != "AS") { var filter = Builders <CurrentDataModel> .Filter.Eq(x => x.sensorId, sensorId); query = database.GetCollection <CurrentDataModel>(tableName).Find(filter).Limit(1).Sort(Builders <CurrentDataModel> .Sort.Descending("latest_checking_time")).FirstOrDefault(); } //IQ ueryable<CurrentDataModel> query; //query = from c in collection.AsQueryable<CurrentDataModel>() orderby c.latest_checking_time descending where c.sensorId.Contains(sensorId) select c; return(query); }