public void Handle(DeveloperUpdatedEvent message) { var devAccountById = _set._devAccountById; var devAccountByLoginName = _set._devAccountByLoginName; var entity = message.Source as AccountBase; AccountState oldState; if (!devAccountById.TryGetValue(message.Source.Id, out oldState)) { throw new GeneralException("给定标识的用户不存在"); } var newState = AccountState.Create(entity); devAccountById[message.Source.Id] = newState; if (!devAccountByLoginName.ContainsKey(newState.LoginName)) { devAccountByLoginName.Add(newState.LoginName, newState); devAccountByLoginName.Remove(oldState.LoginName); } else { devAccountByLoginName[newState.LoginName] = newState; } }
public Task Handle(DeveloperUpdatedEvent notification, CancellationToken cancellationToken) { return(Task.CompletedTask); }