public IHttpActionResult AddUserAccount(Guid userId, AddUserAccountCommand command) { if (command == null) { throw new ArgumentNullException("command"); } if (string.IsNullOrWhiteSpace(command.Name)) { throw new ArgumentException("Account name must be defined."); } if (userId == Guid.Empty) { throw new ArgumentException("userId must be defined."); } AccountType type = ParseAccountType(command.Type); if (type == AccountType.Password) { identityManagementService.AddUserAccount(userId, command.Name, command.Password); } else { identityManagementService.AddExternalUserAccount(userId, type, command.Name); } return(Ok()); }