static void MixedHandle() { var dataPersistence = DataPersistenceFactory.CreateDataPersistence <ShareConfig.DataPersistence.Redis.RedisDataPersistence>("localhost:56379"); var config = ConfigFactory.CreateConfig <ConsulConfig>(dataPersistence); while (true) { Console.WriteLine("1、Load Config from data 2、Read Config 3、Synchronize Config 4、Remove Config 5、Exit"); switch (Console.ReadLine()) { case "1": LoadConfig(dataPersistence, config).GetAwaiter().GetResult(); break; case "2": ReadConfig(config).GetAwaiter().GetResult(); break; case "3": SynchronizeConfg(dataPersistence, config).GetAwaiter().GetResult(); break; case "4": RemoveConfig(dataPersistence, config).GetAwaiter().GetResult(); return; case "5": return; } } }
/// <summary> /// deletes redis. /// </summary> static void DeleteRedis() { var dataPersistence = DataPersistenceFactory.CreateDataPersistence <ShareConfig.DataPersistence.Redis.RedisDataPersistence>("localhost:56379"); var key = new Key { NameSpace = "ns", Environment = "pro", Version = "1.0", Tag = "His" }; var result = dataPersistence.DeleteConfig(key.ToString()); Console.WriteLine(result); }
/// <summary> /// Read Redis /// </summary> static void ReadRedis() { var dataPersistence = DataPersistenceFactory.CreateDataPersistence <ShareConfig.DataPersistence.Redis.RedisDataPersistence>("localhost:56379"); var result = dataPersistence.ReadConfigs(); foreach (var item in result) { Console.WriteLine($"Key:{item.Key}"); Console.WriteLine($"Value:{item.Value}"); } }
/// <summary> /// write redis /// </summary> static void WriteRedis() { var dataPersistence = DataPersistenceFactory.CreateDataPersistence <ShareConfig.DataPersistence.Redis.RedisDataPersistence>("localhost:56379"); var key = new Key { NameSpace = "ns", Environment = "pro", Version = "1.0", Tag = "His" }; var value = new { Name = "Gui Suwei", Age = 18, Sex = false }; var dic = new Dictionary <string, dynamic>(); dic.Add(key.ToString(), value); var result = dataPersistence.WriteConfigs(dic); Console.WriteLine(result); }
private void Client_OPCClientDataChangeEvent(object source, OPCClientDataChangeEventArgs e) { if (GlobalConfig.Global.PersistenceType == PersistenceType.Xml) { OnServiceLog("OPC读取数据不支持XML方式持久化"); return; } if (_config == null) { OnServiceLog("配置信息为空"); return; } List <ITag> tags = ConvertTagData(e); //CrossServerCache.TagCache.AddOrUpdateRange(tags); if (_config.OPCClientPersistence) { PersistenceType pt = GlobalConfig.Global.PersistenceType; if (pt == PersistenceType.CoreRT //|| pt == PersistenceType.Golden || pt == PersistenceType.eDNA) { #region 写入实时数据库 IDbContext rdb = null; try { rdb = DbContextPool.Pop(); if (rdb != null) { string tableName = "SSIOOpc"; rdb.WriteTags(tableName, e.TimeStamps, e.ItemNames, e.ItemValues); } } catch (Exception ex) { OnServiceLog(ex.Message); } finally { if (rdb != null) { DbContextPool.Push(rdb); } } OnServiceLog("OPC Client>>写入实时数据库操作完成。共:" + e.NumItems.ToString() + " 数据点。"); #endregion } else if (pt == PersistenceType.MySql || pt == PersistenceType.Oracle || pt == PersistenceType.SqlServer || pt == PersistenceType.Sqlite) { #region 写到关系数据库 if (_persistence == null) { _persistence = DataPersistenceFactory.CreateDataPersistence(pt); } ((BaseSqlPersistence)_persistence).PersistenceData("", tags); OnServiceLog("OPC Client>>写入关系数据库操作完成。共:" + e.NumItems.ToString() + " 数据点。"); #endregion } } else { string context = "OPC Client>>"; for (int i = 0; i < e.NumItems; i++) { context += String.Format("序号:{0},时间:{1},标签:{2},值:{3};", i.ToString(), e.TimeStamps[i].ToString("yyyy-MM-dd HH:mm:ss"), e.ItemNames[i], e.ItemValues[i].ToString()); } OnServiceLog(context); } }