为缓存创建密钥

时间:2012-06-15 06:16:53

标签: c# linq

我想编写为缓存对象生成密钥的方法。 这是我的功能:

public static string GenerateKeyForCache(string jobName, params object[] keys )
        {
            var generatedKey = keys.Aggregate(string.Empty, (current, key) => current + (key + "-"));
            return jobName + "-" + new string(generatedKey.Take(generatedKey.Length - 1).ToArray());
        }

此代码为缓存生成密钥,例如我们有以下调用:

CacheUtils.GenerateKeyForCache("JobName", "1","2","3");

该方法生成以下密钥:"JobName-1-2-3"

这样做的最佳方法是什么?

1 个答案:

答案 0 :(得分:4)

为什么不使用String方法?

public static string GenerateKeyForCache(string jobName, params string[] keys)
{
    return String.Format("{0}-{1}", jobName, String.Join("-", keys));
}

无需AggreagteTake ...

保持简单