/// <summary>
        /// Adds the specified view model.
        /// </summary>
        /// <param name="viewModel">The view model.</param>
        /// <exception cref="ArgumentNullException">
        /// <paramref name="viewModel"/>
        /// </exception>
        public void Add(CreatedAccountViewModel viewModel)
        {
            if (ReferenceEquals(viewModel, null))
            {
                throw new ArgumentNullException(nameof(viewModel));
            }

            Account account = factories.GetAccount(viewModel.AccountType);

            account.FirstName = viewModel.FirstName;
            account.LastName  = viewModel.LastName;

            _accounts.Add(account);
        }