public async Task <UserSessionItem> GetSessionItem(UserSessionItemId sessionKeyItemId, CancellationToken cancellationToken) { var sessionKeyItems = await StateManager.GetOrAddAsync <IReliableDictionary <UserSessionItemId, UserSessionItem> >(SessionKeyDictionaryName); ServiceEventSource.Current.Message($"Method started {nameof(UserSessionService)}->GetSessionItem() at: {DateTime.UtcNow}"); UserSessionItem result = null; using (var tx = StateManager.CreateTransaction()) { var enumerator = (await sessionKeyItems.CreateEnumerableAsync(tx)).GetAsyncEnumerator(); while (await enumerator.MoveNextAsync(cancellationToken)) { if (enumerator.Current.Key == sessionKeyItemId) { result = enumerator.Current.Value; break; } } } ServiceEventSource.Current.Message($"Method ended {nameof(UserSessionService)}->GetSessionItem() at: {DateTime.UtcNow}"); return(result); }
public Task RemoveSessionItem(UserSessionItemId sessionKeyItemId, CancellationToken cancellationToken) { // For now I am removing data via run async, but this one also need to be implemented if user wants to delete the session explicitly return(null); }