У меня есть концентратор SignalR со статическим свойством, содержащим подписки.
Вот пример:
[HubName("MyHub")]
public class MyHub: Microsoft.AspNet.SignalR.Hub
{
private static readonly Subscriptions subscriptions = new Subscriptions();
// ...
}
Класс Subscriptions
содержит потокобезопасный список и случайныйGUID как свойство для целей тестирования:
public class Subscriptions
{
public string GUID = Guid.NewGuid().ToString();
// ...
}
Поскольку Subscriptions
является статическим свойством концентратора, вы ожидаете, что он существует только как один экземпляр.Однако когда я добавляю подписку, свойство GUID отличается от того, когда я пытаюсь удалить подписку.Значит, у статического свойства есть несколько экземпляров?
Итак, как можно это исправить?Как я могу заставить статическое существовать только в одном экземпляре?
Или что может быть лучшей альтернативой для сохранения "состояний" в концентраторе SignalR?