public ActionResult ProviderRegistration(ProviderViewModel providerViewModel)
        {
            if (!ModelState.IsValid)
            {
                return View(providerViewModel);
            }
            try
            {
                HealthReunionDataAccess.HealthReunionEntities dataContext = new HealthReunionDataAccess.HealthReunionEntities();
                ProviderRepository providerRepository = new ProviderRepository();

                var provider = new Provider
                {
                    ProviderName = providerViewModel.ProviderName,
                    TermsOfUse = providerViewModel.TermsOfUse.Trim(),
                    ProviderDescription = providerViewModel.ProviderDescription.Trim(),
                    PrivacyStatement = providerViewModel.PrivacyStatement.Trim(),
                    AuthorizationReason = providerViewModel.AuthorizationReason.Trim(),
                    Email = providerViewModel.Email.Trim()
                };

                var user = new User
                {
                    UserName = providerViewModel.UserName.Trim(),
                    Password = providerViewModel.Password.Trim(),
                    ProviderId = provider.ProviderId
                };

                providerRepository.AddProviderWithDefaultUser(provider, user);
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
                return View(providerViewModel);
            }
            ViewBag.Message = string.Format("Provider '{0}' Created Sucessfully!", providerViewModel.ProviderName);
            return View(new ProviderViewModel());
        }