Files
ZelWiki/ZelWiki.Caching/WikiCacheKeyFunction.cs
2025-02-23 18:47:21 +08:00

23 lines
877 B
C#

using System.Runtime.CompilerServices;
using static ZelWiki.Caching.WikiCache;
namespace ZelWiki.Caching
{
public class WikiCacheKeyFunction(string key) : IWikiCacheKey
{
public string Key { get; set; } = key;
/// <summary>
/// 生成一个包含调用函数名称的缓存键。
/// </summary>
public static WikiCacheKeyFunction Build(WikiCache.Category category, object?[] segments, [CallerMemberName] string callingFunction = "")
=> new($"[{category}]:[{string.Join("]:[", segments)}]:[{callingFunction}]");
/// <summary>
/// 生成一个包含调用函数名称的缓存键。
/// </summary>
public static WikiCacheKeyFunction Build(WikiCache.Category category, [CallerMemberName] string callingFunction = "")
=> new($"[{category}]:[{callingFunction}]");
}
}