From bfd4fd8e4a05a681ec10a47992294cf752a764c4 Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期一, 02 三月 2026 15:10:58 +0800
Subject: [PATCH] 添加Redis服务与缓存增强
---
Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Caches/ICacheService.cs | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 49 insertions(+), 0 deletions(-)
diff --git a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Caches/ICacheService.cs b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Caches/ICacheService.cs
index 2c076d7..d733532 100644
--- a/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Caches/ICacheService.cs
+++ b/Code/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Caches/ICacheService.cs
@@ -60,5 +60,54 @@
/// <param name="key">缂撳瓨Key</param>
/// <returns></returns>
string? Get(string key);
+
+ #region ConcurrentDictionary椋庢牸鏂规硶
+
+ /// <summary>
+ /// 灏濊瘯娣诲姞锛屼粎褰揔ey涓嶅瓨鍦ㄦ椂娣诲姞鎴愬姛
+ /// </summary>
+ bool TryAdd(string key, string value, int expireSeconds = -1);
+
+ /// <summary>
+ /// 灏濊瘯娣诲姞瀵硅薄锛屼粎褰揔ey涓嶅瓨鍦ㄦ椂娣诲姞鎴愬姛
+ /// </summary>
+ bool TryAdd<T>(string key, T value, int expireSeconds = -1) where T : class;
+
+ /// <summary>
+ /// 灏濊瘯鑾峰彇鍊硷紝杩斿洖鏄惁瀛樺湪
+ /// </summary>
+ bool TryGetValue(string key, out string? value);
+
+ /// <summary>
+ /// 灏濊瘯鑾峰彇瀵硅薄锛岃繑鍥炴槸鍚﹀瓨鍦�
+ /// </summary>
+ bool TryGetValue<T>(string key, out T? value) where T : class;
+
+ /// <summary>
+ /// 灏濊瘯绉婚櫎骞惰繑鍥炶绉婚櫎鐨勫��
+ /// </summary>
+ bool TryRemove(string key, out string? value);
+
+ /// <summary>
+ /// 灏濊瘯鏇存柊锛屼粎褰揔ey瀛樺湪鏃舵洿鏂�
+ /// </summary>
+ bool TryUpdate(string key, string newValue, int expireSeconds = -1);
+
+ /// <summary>
+ /// 鑾峰彇鎴栨坊鍔狅細Key瀛樺湪鍒欒繑鍥炵幇鏈夊�硷紝涓嶅瓨鍦ㄥ垯娣诲姞骞惰繑鍥炴柊鍊�
+ /// </summary>
+ string GetOrAdd(string key, string value, int expireSeconds = -1);
+
+ /// <summary>
+ /// 鑾峰彇鎴栨坊鍔狅紙宸ュ巶鏂规硶锛夛細Key瀛樺湪鍒欒繑鍥炵幇鏈夊�硷紝涓嶅瓨鍦ㄥ垯閫氳繃宸ュ巶鏂规硶鐢熸垚鍊煎苟娣诲姞
+ /// </summary>
+ string GetOrAdd(string key, Func<string, string> valueFactory, int expireSeconds = -1);
+
+ /// <summary>
+ /// 鑾峰彇鎴栨坊鍔犲璞�
+ /// </summary>
+ T GetOrAdd<T>(string key, Func<string, T> valueFactory, int expireSeconds = -1) where T : class;
+
+ #endregion
}
}
--
Gitblit v1.9.3