public async Task <IActionResult> Index(InstallModel installModel) { if (_installationProvider.IsPlatformInstalled) { return(new StatusCodeResult(StatusCodes.Status405MethodNotAllowed)); } if (!ModelState.IsValid) { return(new StatusCodeResult(StatusCodes.Status400BadRequest)); } var connectionString = _installationProvider.GetConnectionString(installModel); var settingFile = Path.Combine(_hostingEnvironment.ContentRootPath, $"appsettings.{_hostingEnvironment.EnvironmentName}.json"); try { await _installationProvider.InstallPlatform(installModel); //ApplicationManager.Instance.Restart(); await _hubContext.Clients.All.SendAsync("OnUpdateInstallLog", "Restarting the website"); await Task.Run(() => { _hostApplicationLifetime.StopApplication(); }); return(Ok()); } catch (SqlException ex) { var errorMessage = $"Invalid connection to database, kindly check the connection string parameters: {ex.Message}"; ModelState.AddModelError("", errorMessage); _logger.LogError(ex, errorMessage); return(new ObjectResult(errorMessage) { StatusCode = StatusCodes.Status400BadRequest }); } catch (Exception ex) { var errorMessage = ex.Message; ModelState.AddModelError("", errorMessage); _logger.LogError(ex, errorMessage); return(new ObjectResult(errorMessage) { StatusCode = StatusCodes.Status400BadRequest }); } }
public IActionResult Index(InstallModel installModel) { if (_installationProvider.IsPlatformInstalled) { return(new StatusCodeResult(StatusCodes.Status405MethodNotAllowed)); } if (ModelState.IsValid) { string connectionString = _installationProvider.GetConnectionString(installModel); string settingFile = Path.Combine(_hostingEnvironment.ContentRootPath, $"appsettings.{_hostingEnvironment.EnvironmentName}.json"); try { _installationProvider.InstallPlatform(installModel); ApplicationManager.Instance.Restart(); return(Ok()); } catch (SqlException ex) { string error = $"Invalid connection to database, kindly check the connection string parameters: {ex.Message}"; ModelState.AddModelError("", error); return(new ObjectResult(error) { StatusCode = StatusCodes.Status400BadRequest }); } catch (Exception ex) { string error = ex.Message; ModelState.AddModelError("", error); return(new ObjectResult(error) { StatusCode = StatusCodes.Status400BadRequest }); } } return(new StatusCodeResult(StatusCodes.Status400BadRequest)); }