Пример #1
0
 public SetupController(ISetupProvider setupProvider,
                        IUserSecurityStampStore <ApplicationUser> userSecurityStampStore,
                        IPasswordHasher <ApplicationUser> passwordHasher, IUserManager <ApplicationUser> userManager,
                        IDataSeedService dataSeedService, ILoginManager <ApplicationUser> loginManager)
 {
     _setupProvider          = setupProvider;
     _userSecurityStampStore = userSecurityStampStore;
     _passwordHasher         = passwordHasher;
     _userManager            = userManager;
     _loginManager           = loginManager;
     _dataSeedService        = dataSeedService;
 }
Пример #2
0
        public async Task Invoke(HttpContext context, ISetupProvider installProvider)
        {
            if (!installProvider.HasInitializedSetup())
            {
                await _next(context);

                return;
            }

            var currentUrl = context.Request.Path.ToString();

            // check the database is installed
            if (!installProvider.HasDatabaseSetup())
            {
                //redirect
                var installUrl = SetupSettingsConst.StartSetupUrl;
                if (!currentUrl.StartsWith(installUrl, StringComparison.InvariantCultureIgnoreCase))
                {
                    context.Response.Redirect(installUrl);
                }

                await _next(context);

                return;
            }

            if (!installProvider.HasDataSeeded())
            {
                //redirect
                var seedDataUrl = SetupSettingsConst.SeedDataUrl;
                if (!currentUrl.StartsWith(seedDataUrl, StringComparison.InvariantCultureIgnoreCase))
                {
                    context.Response.Redirect(seedDataUrl);
                }

                await _next(context);

                return;
            }

            await _next(context);
        }
Пример #3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="SetupDiscoverer" /> class.
 /// </summary>
 /// <param name="setupFileFinder">The setup file finder.</param>
 /// <param name="setupProvider">The setup provider.</param>
 public SetupDiscoverer(ISetupFileFinder setupFileFinder, ISetupProvider setupProvider)
 {
     this.setupFileFinder = setupFileFinder;
     this.setupProvider   = setupProvider;
 }