/// <summary> /// LoadSetupVariablesFromParameters. /// </summary> /// <param name="Src"></param> /// <param name="Dst"></param> public static void FillFromSession(IDictionary<string, string> Src, SetupVariables Dst) { if (Src == null) throw new NullReferenceException("Src"); var Hash = Src.ToNonGenericDictionary() as Hashtable; if (Hash == null) throw new NullReferenceException("Hash"); Dst.ApplicationName = Utils.GetStringSetupParameter(Hash, "ApplicationName"); Dst.ComponentName = Utils.GetStringSetupParameter(Hash, "ComponentName"); Dst.ComponentCode = Utils.GetStringSetupParameter(Hash, "ComponentCode"); Dst.ComponentDescription = Utils.GetStringSetupParameter(Hash, "ComponentDescription"); Dst.Version = Utils.GetStringSetupParameter(Hash, "Version"); Dst.InstallationFolder = Utils.GetStringSetupParameter(Hash, "InstallationFolder"); Dst.InstallerFolder = Utils.GetStringSetupParameter(Hash, "InstallerFolder"); Dst.Installer = Utils.GetStringSetupParameter(Hash, "Installer"); Dst.InstallerType = Utils.GetStringSetupParameter(Hash, "InstallerType"); Dst.InstallerPath = Utils.GetStringSetupParameter(Hash, "InstallerPath"); //Dst.IISVersion = Utils.GetVersionSetupParameter(Hash, "IISVersion"); Dst.SetupXml = Utils.GetStringSetupParameter(Hash, "SetupXml"); Dst.ServerPassword = Utils.GetStringSetupParameter(Hash, Global.Parameters.ServerPassword); Dst.UpdateServerPassword = !string.IsNullOrWhiteSpace(Dst.ServerPassword); Dst.WebSiteIP = Utils.GetStringSetupParameter(Hash, Global.Parameters.WebSiteIP); Dst.WebSitePort = Utils.GetStringSetupParameter(Hash, Global.Parameters.WebSitePort); Dst.WebSiteDomain = Utils.GetStringSetupParameter(Hash, Global.Parameters.WebSiteDomain); Dst.UserDomain = Utils.GetStringSetupParameter(Hash, Global.Parameters.UserDomain); Dst.UserAccount = Utils.GetStringSetupParameter(Hash, Global.Parameters.UserAccount); Dst.UserPassword = Utils.GetStringSetupParameter(Hash, Global.Parameters.UserPassword); // From portal base install. Dst.ConfigurationFile = "Web.config"; Dst.NewWebSite = true; Dst.NewVirtualDirectory = false; Dst.EnterpriseServerURL = Utils.GetStringSetupParameter(Hash, Global.Parameters.EnterpriseServerUrl); // From ent server base install. Dst.ConnectionString = Global.EntServer.AspNetConnectionStringFormat; Dst.DatabaseServer = Utils.GetStringSetupParameter(Hash, Global.Parameters.DatabaseServer); Dst.Database = Utils.GetStringSetupParameter(Hash, Global.Parameters.DatabaseName); Dst.CreateDatabase = false; // Done by WiX itself. Dst.NewDatabaseUser = true; Dst.ServerAdminPassword = Utils.GetStringSetupParameter(Hash, Global.Parameters.ServerAdminPassword); Dst.UpdateServerAdminPassword = true; // DB_LOGIN, DB_PASSWORD. bool WinAuth = Utils.GetStringSetupParameter(Hash, "DbAuth").ToLowerInvariant().Equals("Windows Authentication".ToLowerInvariant()); Dst.DbInstallConnectionString = SqlUtils.BuildDbServerMasterConnectionString( Dst.DatabaseServer, WinAuth ? null : Utils.GetStringSetupParameter(Hash, Global.Parameters.DbServerAdmin), WinAuth ? null : Utils.GetStringSetupParameter(Hash, Global.Parameters.DbServerAdminPassword)); Dst.BaseDirectory = Utils.GetStringSetupParameter(Hash, Global.Parameters.BaseDirectory); Dst.ComponentId = Utils.GetStringSetupParameter(Hash, Global.Parameters.ComponentId); Dst.ComponentExists = string.IsNullOrWhiteSpace(Dst.ComponentId) ? false : true; Dst.UpdateVersion = Utils.GetStringSetupParameter(Hash, "Version"); Dst.SessionVariables = Src; }