Redis.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using GSG.NET.ObjectBase;
  2. using StackExchange.Redis;
  3. using StackExchange.Redis.Extensions.Core;
  4. using StackExchange.Redis.Extensions.Newtonsoft;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace VehicleControlSystem.ControlLayer.DB
  11. {
  12. public class Redis : SingletonBase<Redis>, IDisposable
  13. {
  14. StackExchangeRedisCacheClient cacheClient = null;
  15. ConnectionMultiplexer redisMaster = null;
  16. IDatabase database = null;
  17. private Redis()
  18. {
  19. }
  20. public void Dispose()
  21. {
  22. this.cacheClient.Dispose();
  23. }
  24. public void Init()
  25. {
  26. var serializer = new NewtonsoftSerializer();
  27. redisMaster = ConnectionMultiplexer.Connect( "127.0.0.1:6379" + ",allowAdmin=true,password=..." );
  28. cacheClient = new StackExchangeRedisCacheClient( redisMaster, serializer );
  29. database = cacheClient.Database;
  30. }
  31. public bool SetValue(string key, string val) => database.StringSet( key, val );
  32. public string GetValue( string key ) => database.StringGet( key );
  33. }
  34. }