我已阅读有关何时使用静态类以及何时建议使用实例类的帖子。但是,我的印象是我下面的示例介于两者之间:
- 不需要类实例,存储的状态在 AppDomain 内的成员之间共享。
- 应该可以从 AppDomain 中的不同类实例访问状态。
- 不需要抽象或覆盖。
所以,我的问题是:我应该继续使用它作为静态还是使用单例概念更好?
public static class SubscriptionManager
{
    private static Dictionary<string, string> Repository { get; set; }
    static SubscriptionManager()
    {
        Repository = new Dictionary<string, string>();
    }
    public static void Subscribe(string key, string value)
    {
        if (Repository.ContainsKey(key))
            Repository[key] = value;
        else
            Repository.Add(key, value);
    }
    public static void Unsubscribe(string key, string value)
    {
        if (Repository.ContainsKey(key))
            Repository.Remove(key);
    }
    public static string GetSubscription(string key)
    {
        if (Repository.ContainsKey(key))
            return Repository[key];
        else
            return "";
    }
}