GetSectionGroup() публичный Метод

public GetSectionGroup ( string path ) : ConfigurationSectionGroup
path string
Результат ConfigurationSectionGroup
Пример #1
0
        public static void RemoveSettingsValues(this SystemConfiguration configuration, Type settingsClass, SettingScope?scope = null)
        {
            var removeApplicationSettings = !scope.HasValue || scope.Value == SettingScope.Application;
            var removeUserSettings        = !scope.HasValue || scope.Value == SettingScope.User;

            if (removeApplicationSettings)
            {
                var sectionPath = new ConfigurationSectionPath(settingsClass, SettingScope.Application);
                ConfigurationSectionGroup group = configuration.GetSectionGroup(sectionPath.GroupPath);
                if (group != null)
                {
                    group.Sections.Remove(sectionPath.SectionName);
                }
            }

            if (removeUserSettings)
            {
                var sectionPath = new ConfigurationSectionPath(settingsClass, SettingScope.User);
                var group       = configuration.GetSectionGroup(sectionPath.GroupPath);
                if (group != null)
                {
                    group.Sections.Remove(sectionPath.SectionName);
                }
            }

            configuration.Save(ConfigurationSaveMode.Minimal, true);
        }
 public void EncryptSectionsUser()
 {
     //System.Configuration.Configuration configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
     //configuration.GetSectionGroup("userSettings").Sections["CasaEmpe\x00f1os.Properties.Properties.Settings"].SectionInformation.ProtectSection("RSAProtectedConfigurationProvider");
     //configuration.Save();
     //configuration = ConfigurationManager.OpenExeConfiguration(Application.ExecutablePath);
     //configuration.GetSectionGroup("userSettings").Sections["CasaEmpe\x00f1os.Properties.Settings"].SectionInformation.ProtectSection("RSAProtectedConfigurationProvider");
     //configuration.Save();
     System.Configuration.Configuration configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
     configuration.GetSectionGroup("userSettings").Sections["SoftEmpenios.Properties.Settings"].SectionInformation.ProtectSection("RSAProtectedConfigurationProvider");
     configuration.Save();
     configuration = ConfigurationManager.OpenExeConfiguration(Application.ExecutablePath);
     configuration.GetSectionGroup("userSettings").Sections["SoftEmpenios.Properties.Settings"].SectionInformation.ProtectSection("RSAProtectedConfigurationProvider");
     configuration.Save();
 }
Пример #3
0
    public void Sendmail_FeedBack(string subject)
    {
        SmtpClient obj  = new SmtpClient();
        string     host = "";

        try
        {
            obj.EnableSsl = true;
            MailMessage mailSendMails = new MailMessage();
            mailSendMails.To.Add(ConfigurationManager.AppSettings["MailFromCredentials"].Split('|')[0]);
            mailSendMails.From    = new MailAddress(EmailID);
            mailSendMails.Subject = subject;
            string message = "Name : " + Name + System.Environment.NewLine;
            message += "Address : " + Address + System.Environment.NewLine;
            message += "Contact No. : " + ContactNo + System.Environment.NewLine;
            message += "Email ID : " + EmailID + System.Environment.NewLine;
            message += "Feedback : " + FeedBack;

            mailSendMails.IsBodyHtml = true;
            mailSendMails.Body       = message;
            System.Configuration.Configuration config = WebConfigurationManager.OpenWebConfiguration("~/Web.config") as System.Configuration.Configuration;
            //Configuration configurationFile = WebConfigurationManager.OpenWebConfiguration("~/Web.config");

            MailSettingsSectionGroup mailSettings = config.GetSectionGroup("system.net/mailSettings") as MailSettingsSectionGroup;
            if (mailSettings != null)
            {
                host = mailSettings.Smtp.Network.Host;
            }
            obj.Send(mailSendMails);
        }
        catch (Exception ex)
        {
            //Exception_Log.ExceptionMethod("Registration", "Registration", "Sendmail_UserRegistration", ex);
        }
    }
		public static SerializationSectionGroup GetSectionGroup (ConfigurationType config)
		{
			var ret = (SerializationSectionGroup) config.GetSectionGroup ("system.runtime.serialization");
			if (ret == null)
				throw new SystemException ("Internal configuration error: section 'system.runtime.serialization' was not found.");
			return ret;
		}
Пример #5
0
        static DatabaseManager()
        {
            Servers = new Dictionary <string, SortedSet <string> >();

            foreach (ConnectionStringSettings cstr in ConfigurationManager.ConnectionStrings)
            {
                SqlConnectionStringBuilder connStrBuilder = new SqlConnectionStringBuilder(cstr.ConnectionString);
                if (!Servers.ContainsKey(connStrBuilder.DataSource))
                {
                    Servers[connStrBuilder.DataSource] = new SortedSet <string>();

                    Server server = new Server(connStrBuilder.DataSource);
                    foreach (Database db in server.Databases)
                    {
                        Servers[connStrBuilder.DataSource].Add(db.ToString());
                    }
                }
                else
                {
                    Servers[connStrBuilder.DataSource].Add(connStrBuilder.InitialCatalog);
                }
            }

            FeatureDatabases = new HashSet <string>();

            System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            foreach (ConfigurationSection cs in config.GetSectionGroup("TestDatabases").Sections)
            {
                FeatureDatabases.Add(cs.SectionInformation.Name);
            }
        }
Пример #6
0
        public static bool ValidSmtpSetting()
        {
            System.Configuration.Configuration config =
                WebConfigurationManager.OpenWebConfiguration(HttpContext.Current.Request.ApplicationPath);
            MailSettingsSectionGroup settings = (MailSettingsSectionGroup)config.GetSectionGroup("system.net/mailSettings");

            try
            {
                //Log.d("SMTP 主機: " + settings.Smtp.Network.Host);
                if (settings != null && UriHostNameType.Unknown == Uri.CheckHostName(settings.Smtp.Network.Host))
                {
                    return(false);
                }
                //Log.d("SMTP 埠號: " + settings.Smtp.Network.Port);
                //Log.d("SMTP 帳號: " + settings.Smtp.Network.UserName);
                if (settings != null && string.IsNullOrWhiteSpace(settings.Smtp.Network.UserName))
                {
                    return(false);
                }
                //Log.d("SMTP 密碼: " + settings.Smtp.Network.Password);
                if (settings != null && string.IsNullOrWhiteSpace(settings.Smtp.Network.Password))
                {
                    return(false);
                }
            }
            catch (ConfigurationErrorsException ex)
            {
                throw ex;
            }
            return(true);
        }
        public ConfigurationSectionGroup GetSectionGroup(System.Configuration.Configuration configuration, bool create, out bool created)
        {
            created = false;
            if (IsRoot)
            {
                return(configuration.RootSectionGroup);
            }

            if (!create)
            {
                return(configuration.GetSectionGroup(this));
            }

            var path = Root;
            ConfigurationSectionGroup group = configuration.RootSectionGroup;

            foreach (string pathSegment in _pathSegments)
            {
                path = path.GetChildGroupPath(pathSegment);
                var childGroup = group.SectionGroups[pathSegment];
                if (childGroup != null)
                {
                    group = childGroup;
                    continue;
                }

                created    = true;
                childGroup = path.CreateSectionGroup();
                group.SectionGroups.Add(pathSegment, childGroup);
                group = group.SectionGroups[pathSegment];
            }

            return(group);
        }
Пример #8
0
 public ConfigurationSectionGroup GetSectionGroup(string sectionGroupName)
 {
     lock (this)
     {
         return(mConfiguration.GetSectionGroup(sectionGroupName));
     }
 }
		public static ServiceModelSectionGroup GetSectionGroup (
			ConfigurationType config)
		{
			ServiceModelSectionGroup ret = (ServiceModelSectionGroup) config.GetSectionGroup ("system.serviceModel");
			if (ret == null)
				throw new SystemException ("Internal configuration error: section 'system.serviceModel' was not found.");
			return ret;
		}
 static public TransactionsSectionGroup GetSectionGroup(Configuration config)
 {
     if (config == null)
     {
         throw new ArgumentNullException("config");
     }
     return (TransactionsSectionGroup)config.GetSectionGroup(ConfigurationStrings.SectionGroupName);
 }
Пример #11
0
 private static SettingElement GetSetting(Configuration config, string name)
 {
     var group = config.GetSectionGroup("applicationSettings");
     var section = group.Sections.Get("Toggl.Tests.Properties.Settings") as ClientSettingsSection;
     var settings = section.Settings;
     var setting = settings.Get(name);
     return setting;
 }
 public static TransactionsSectionGroup GetSectionGroup(System.Configuration.Configuration config)
 {
     if (config == null)
     {
         throw new ArgumentNullException("config");
     }
     return((TransactionsSectionGroup)config.GetSectionGroup("system.transactions"));
 }
 public static NetSectionGroup GetSectionGroup(System.Configuration.Configuration config)
 {
     if (config == null)
     {
         throw new ArgumentNullException("config");
     }
     return(config.GetSectionGroup("system.net") as NetSectionGroup);
 }
Пример #14
0
 public static ServicesSectionGroup GetSectionGroup(System.Configuration.Configuration config)
 {
     if (config == null)
     {
         throw new ArgumentNullException("config");
     }
     return(config.GetSectionGroup("Ivan.Services") as ServicesSectionGroup);
 }
Пример #15
0
        public void SectionCollectionEnumerator()
        {
            SysConfig c = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            ConfigurationSectionCollection col =
                c.GetSectionGroup("system.web").Sections;
            IEnumerator e = col.GetEnumerator();

            e.MoveNext();
            Assert.IsTrue(e.Current is ConfigurationSection);
        }
Пример #16
0
        public static SerializationSectionGroup GetSectionGroup(ConfigurationType config)
        {
            var ret = (SerializationSectionGroup)config.GetSectionGroup("system.runtime.serialization");

            if (ret == null)
            {
                throw new SystemException("Internal configuration error: section 'system.runtime.serialization' was not found.");
            }
            return(ret);
        }
Пример #17
0
        private async Task SendMail(string email, string msg, string mailFor = "")
        {
            System.Configuration.Configuration config   = WebConfigurationManager.OpenWebConfiguration(System.Web.HttpContext.Current.Request.ApplicationPath);
            MailSettingsSectionGroup           settings = (MailSettingsSectionGroup)config.GetSectionGroup("system.net/mailSettings");

            System.Net.NetworkCredential credential = new System.Net.NetworkCredential(settings.Smtp.Network.UserName, settings.Smtp.Network.Password);
            //Create the SMTP Client
            SmtpClient client = new SmtpClient();

            client.Host        = settings.Smtp.Network.Host;
            client.Credentials = credential;
            client.Timeout     = 300000;
            client.EnableSsl   = true;
            MailMessage   mail     = new MailMessage();
            StringBuilder mailbody = new StringBuilder();

            mail.From = new MailAddress(settings.Smtp.Network.UserName, "Tour Travels");
            mail.To.Add(email);
            mail.Priority = MailPriority.High;

            switch (mailFor)
            {
            case "Reset":
                mail.Subject = "Link To Reset Password - Tour Travels";
                mailbody.Append("<h4>Link To Reset Password</h4>");
                mailbody.Append("<p>" + msg + ". You will be redirected to reset password page, please choose new password for your account.</p>");
                mailbody.Append("<p>Timestamp: " + DateTime.Now.ToString("dd MMM yyyy HH:mm tt") + "</p>");
                mailbody.Append("<i>This is an auto generated mail, please do not reply.</i>");
                break;

            case "New":
                mail.Subject = "New Account Registration - Tour Travels";
                mailbody.Append("<h4>Your account has been registered in the Tour Travels</h4>");
                mailbody.Append("<p>" + msg + ".</p>");
                mailbody.Append("<p>You can login in your account only after activation. After successful activation, you will be asked to set new password for your account.</p>");
                mailbody.Append("<p>Regards, <br/> Timestamp: " + DateTime.Now.ToString("dd MMM yyyy HH:mm tt") + "</p>");
                mailbody.Append("<i>This is an auto generated mail, please do not reply.</i>");
                break;

            default:
                break;
            }

            mail.Body       = mailbody.ToString();
            mail.IsBodyHtml = true;

            try
            {
                await client.SendMailAsync(mail);
            }
            catch (Exception)
            {
                //throw;
            }
        }
Пример #18
0
    //public static string GetLoginUserAttr(object sessionUser, string claimType)
    //{
    //    return ((System.Security.Claims.ClaimsIdentity)User.Identity).Claims.Where(u => u.Type == claimType).Select(c => c.Value).First();
    //}

    /// <summary>
    /// Sends the mail.
    /// </summary>
    /// <param name="bcc">The BCC.</param>
    /// <param name="cc">The cc.</param>
    /// <param name="emailto">The emailto.</param>
    /// <param name="subject">The subject.</param>
    /// <param name="body">The body.</param>
    /// <param name="AttachFilePath">The attach file path.</param>
    public static bool SendMail(string bcc, string cc, string emailto, string subject, string body, string AttachFilePath)
    {
        try
        {
            if (emailto == "")
            {
                return(false);
            }
            System.Configuration.Configuration webConfig    = WebConfigurationManager.OpenWebConfiguration("~/web.config");
            MailSettingsSectionGroup           mailSettings = webConfig.GetSectionGroup("system.net/mailSettings") as MailSettingsSectionGroup;
            SmtpClient smtp = new SmtpClient
            {
                Host                  = mailSettings.Smtp.Network.Host,
                Port                  = mailSettings.Smtp.Network.Port,
                EnableSsl             = true,
                DeliveryMethod        = SmtpDeliveryMethod.Network,
                UseDefaultCredentials = false,
                Credentials           =
                    new NetworkCredential(mailSettings.Smtp.Network.UserName,
                                          mailSettings.Smtp.Network.Password)
            };
            using (var message = new MailMessage(mailSettings.Smtp.From, emailto)
            {
                SubjectEncoding = Encoding.UTF8,
                BodyEncoding = Encoding.UTF8,
                Subject = subject,
                Body = body,
                IsBodyHtml = true,
            })
            {
                if (!string.IsNullOrEmpty(cc))
                {
                    message.CC.Add(cc);
                }
                if (!string.IsNullOrEmpty(bcc))
                {
                    message.Bcc.Add(bcc);
                }
                if (!string.IsNullOrEmpty(AttachFilePath))
                {
                    Attachment file = new Attachment(AttachFilePath, MediaTypeNames.Application.Octet);
                    message.Attachments.Add(file);
                }
                ServicePointManager.ServerCertificateValidationCallback = delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
                { return(true); };
                smtp.Send(message);
            }
            return(true);
        }
        catch
        {
            return(false);
        }
    }
        ///// <summary>
        ///// 从配置文件中加载SAP的连接配置。
        ///// </summary>
        ///// <returns></returns>
        //public static RfcDestinationCollection LoadSAPAllConfig()
        //{

        //    //if (SAPINT.SAPConfigList.loadDefaultSystemListFromSAPLogonIniFile())
        //    //{
        //    //    // MessageBox.Show("成功加载SAP GUI配置文件!");
        //    //}


        //    try
        //    {

        //        RfcGeneralConfiguration configuration2 = getSAPGeneralConfiguration();
        //        RfcDestinationCollection clientsSetting = getClientSettings();
        //        if (clientsSetting != null)
        //        {
        //            return clientsSetting;
        //         //    RfcDestinationManager.RegisterDestinationConfiguration(new DefaultDestinationConfiguration(clientsSetting));
        //        }

        //        RfcServerCollection severSetting = getServerSettings();
        //        if (severSetting != null)
        //        {
        //         //   RfcServerManager.RegisterServerConfiguration(new DefaultServerConfiguration(severSetting));
        //        }

        //        // RfcServerManager.loadedFromParameterFile = true;

        //    }
        //    catch (Exception)
        //    {

        //        throw new Exception("无法从配置文件加载");
        //    }

        //}

        /// <summary>
        /// 加载根节点
        /// </summary>
        private static void getSapSectionGroup()
        {
            System.Configuration.Configuration configuration = null;
            // configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            configuration = SAPGlobalSettings.config;
            sectionGroup  = configuration.GetSectionGroup("SAPINT");
            if (sectionGroup == null)
            {
                throw new Exception("无法从配置文件加载SAP配置!!");
            }
        }
Пример #20
0
        public static ServiceModelSectionGroup GetSectionGroup(
            ConfigurationType config)
        {
            ServiceModelSectionGroup ret = (ServiceModelSectionGroup)config.GetSectionGroup("system.serviceModel");

            if (ret == null)
            {
                throw new SystemException("Internal configuration error: section 'system.serviceModel' was not found.");
            }
            return(ret);
        }
Пример #21
0
        public void CreateWebConfig()
        {
            var serviceinfors = this.GetServiceInformations();

            System.Configuration.Configuration cfg = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("/", this.MyAppsetting.SiteName);
            //设置appsetting
            AppSettingsSection appSetting = cfg.AppSettings;

            appSettingHandle(appSetting, "DatabaseType", this.MyAppsetting.DatabaseType);
            appSettingHandle(appSetting, "DataSource", this.MyAppsetting.DBServer);
            appSettingHandle(appSetting, "InitialCatalog", this.MyAppsetting.DBName);
            appSettingHandle(appSetting, "UserID", this.MyAppsetting.DBUser);
            appSettingHandle(appSetting, "Password", this.MyAppsetting.DBPassword);
            appSettingHandle(appSetting, "B1Type", this.MyAppsetting.B1Type);
            appSettingHandle(appSetting, "B1Server", this.MyAppsetting.B1Server);
            appSettingHandle(appSetting, "IISAddress", this.MyAppsetting.IISAddress);
            var group           = cfg.GetSectionGroup("system.serviceModel");
            var ServicesSection = group.Sections["services"] as System.ServiceModel.Configuration.ServicesSection;

            foreach (var item in serviceinfors)
            {
                System.ServiceModel.Configuration.ServiceElement targetser = null;
                foreach (System.ServiceModel.Configuration.ServiceElement Service in ServicesSection.Services)
                {
                    if (Service.Name.Contains(item.ServiceName))
                    {
                        targetser = Service;
                    }
                }
                if (targetser == null)
                {
                    targetser      = new System.ServiceModel.Configuration.ServiceElement();
                    targetser.Name = string.Format("BizSys.{0}.Service.DataService.{1}JSON", item.ServicePath, item.ServiceName);
                    var sep = new System.ServiceModel.Configuration.ServiceEndpointElement();
                    sep.BehaviorConfiguration = "AjaxJSON";
                    sep.Binding  = "webHttpBinding";
                    sep.Contract = string.Format("BORep.{0}.BORepository.IBORep{0}JSON", item.ServiceName);
                    targetser.Endpoints.Add(sep);
                    ServicesSection.Services.Add(targetser);
                }
                else
                {
                    targetser.Endpoints.Clear();
                    targetser.Name = string.Format("BizSys.{0}.Service.DataService.{1}JSON", item.ServicePath, item.ServiceName);
                    var sep1 = new System.ServiceModel.Configuration.ServiceEndpointElement();
                    sep1.BehaviorConfiguration = "AjaxJSON";
                    sep1.Binding  = "webHttpBinding";
                    sep1.Contract = string.Format("BORep.{0}.BORepository.IBORep{0}JSON", item.ServiceName);
                    targetser.Endpoints.Add(sep1);
                }
            }
            cfg.Save();
        }
        // Declares the section handler of a given section in its section group, if a declaration isn't already
        // present. 
        private void DeclareSection(Configuration config, string sectionName) {
            ConfigurationSectionGroup settingsGroup = config.GetSectionGroup(UserSettingsGroupName);
            
            if (settingsGroup == null) {
                //Declare settings group
                ConfigurationSectionGroup group = new UserSettingsGroup();
                config.SectionGroups.Add(UserSettingsGroupName, group);
            }

            settingsGroup = config.GetSectionGroup(UserSettingsGroupName);

            Debug.Assert(settingsGroup != null, "Failed to declare settings group");

            if (settingsGroup != null) {
                ConfigurationSection section = settingsGroup.Sections[sectionName];
                if (section == null) {
                    section = new ClientSettingsSection();
                    section.SectionInformation.AllowExeDefinition = ConfigurationAllowExeDefinition.MachineToLocalUser;
                    section.SectionInformation.RequirePermission = false;
                    settingsGroup.Sections.Add(sectionName, section);
                }
            }
        }
Пример #23
0
        /// <summary>
        /// 从单独的Meta.config文件中读取Meta配置
        /// </summary>
        /// <param name="settings"></param>
        /// <returns></returns>
        private static MetaSourceMappingsConfigurationSection LoadMetaSourceInstanceSectionFromMetaFile(ConfigFilesSetting settings)
        {
            System.Configuration.Configuration config = GetSingleFileConfiguration(settings.MetaConfigurationFile);

            MetaConfigurationSectionGroup group =
                config.GetSectionGroup(MetaConfigurationSectionGroupItem) as MetaConfigurationSectionGroup;
            MetaSourceMappingsConfigurationSection section = null;

            if (group != null)
            {
                section = group.SourceMappings;
            }
            return(section);
        }
Пример #24
0
       /// <summary>
       /// 
       /// </summary>
       /// <param name="pConfiguration">Configuration del app.config</param>
       /// <param name="pSectionName">Seccion</param>
        /// <param name="pSectionGroupName">Grupo</param>
       internal static void AddSection(Configuration pConfiguration, String pSectionName,String pSectionGroupName,String pSettingTemplateName)
       {
           ConfigurationSectionGroup wConfigurationSectionGroup =null;
           SettingElement wSettingElement = null;
           XmlDocument doc = new XmlDocument();
           XmlNode xmlValue = doc.CreateNode(XmlNodeType.Element, "value", String.Empty);
           ConfigurationSectionCollection wSections = null;
           if (pSectionGroupName.Length == 0)
           {
               AddSectionFromAssembly(pConfiguration, pSectionName);
               return;
           }
           else
           {
               wConfigurationSectionGroup = pConfiguration.GetSectionGroup(pSectionGroupName);
               if (wConfigurationSectionGroup == null)
                   wConfigurationSectionGroup = AddSectionGroup(pConfiguration, pSectionGroupName);
               wSections = wConfigurationSectionGroup.Sections;
               
           }

           if (wSections.Get(pSectionName) != null) return;

           ClientSettingsSection wClientSettingsSection = new ClientSettingsSection();
           wClientSettingsSection.SectionInformation.RequirePermission = false;
           wClientSettingsSection.SectionInformation.ForceSave = true;
           
           #region Settings


           Dictionary<String, String> wSettings = TemplateProvider.GetSettingDic(pSettingTemplateName);

           if (wSettings != null)
           {
               foreach (KeyValuePair<string, string> seting in wSettings)
               {
                   wSettingElement = new SettingElement();
                   wSettingElement.Name = seting.Key;
                   xmlValue.InnerXml = seting.Value;
                   wSettingElement.Value.ValueXml = xmlValue.Clone();
                   wClientSettingsSection.Settings.Add(wSettingElement);
               }


           }
           #endregion
           wSections.Add(pSectionName, wClientSettingsSection);
           
       }
Пример #25
0
        private static void RegisterViewRequestHandler()
        {
            System.Configuration.Configuration configuration = WebConfigurationManager.OpenWebConfiguration(
                HttpContext.Current.Request.ApplicationPath);
            SystemWebSectionGroup systemWeb = (SystemWebSectionGroup)configuration.GetSectionGroup("system.web");

            try
            {
                systemWeb.HttpModules.Modules.Add(new HttpModuleAction("WebformsViewRequestHandler",
                                                                       typeof(WebformsViewRequestHandler).FullName));
                configuration.Save();
            }
            catch (ConfigurationErrorsException)
            { }
        }
Пример #26
0
    public static void GetAuthServiceSection()
    {
        // Get the Web application configuration.
        System.Configuration.Configuration configuration =
            WebConfigurationManager.OpenWebConfiguration("/aspnetTest");

        // Get the external Web services section.
        ScriptingWebServicesSectionGroup webServicesSection =
            (ScriptingWebServicesSectionGroup)configuration.GetSectionGroup(
                "system.web.extensions/scripting/webServices");

        // Get the authentication service section.
        ScriptingAuthenticationServiceSection authenticationSection =
            webServicesSection.AuthenticationService;
    }
Пример #27
0
        private static void InitJcoSecuritySection(System.Configuration.Configuration conf)
        {
            UniSecuritySectionGroup jcoSec = (UniSecuritySectionGroup)conf.GetSectionGroup("uniSecurity");

            if (jcoSec == null)
            {
                throw new Exception("اشكالي در انجام تنضيمات امنيتي در سايت بوجود آمده است. لطفا تنظيمات را به صورت دستي انجام دهيد. \r\n'uniSecurity' is null. Correct the web.config file.");
            }
            if (jcoSec.MasterPage.Path == "")
            {
                string contentPlaceholderID;
                jcoSec.MasterPage.Path = GetMasterPagePath(out contentPlaceholderID);
                jcoSec.MasterPage.ContentPlaceHolderID = contentPlaceholderID;
            }
        }
Пример #28
0
        public void AddMachineConfigurationInfo()
        {
            System.Configuration.Configuration config = ConfigurationManager.OpenMachineConfiguration();
            Debug.Assert(config != null, "Machine.Config returned null");
            ServiceModelSectionGroup sectionGroup = config.GetSectionGroup("system.serviceModel") as ServiceModelSectionGroup;

            if (sectionGroup != null)
            {
                bool          channelEndpointElementExists = false;
                ClientSection clientSection = sectionGroup.Client;
                foreach (ChannelEndpointElement elem in clientSection.Endpoints)
                {
                    if (elem.Binding.Equals(BINDING_NAME, StringComparison.OrdinalIgnoreCase) && elem.Name.Equals(BINDING_SCHEME, StringComparison.OrdinalIgnoreCase) && elem.Contract.Equals("IMetadataExchange", StringComparison.OrdinalIgnoreCase))
                    {
                        channelEndpointElementExists = true;
                        break;
                    }
                }
                if (!channelEndpointElementExists)
                {
                    Debug.WriteLine("Adding ChannelEndpointElement for : " + BINDING_NAME);
                    ChannelEndpointElement elem = new ChannelEndpointElement();
                    elem.Binding  = BINDING_NAME;
                    elem.Name     = BINDING_SCHEME;
                    elem.Contract = "IMetadataExchange";
                    sectionGroup.Client.Endpoints.Add(elem);
                    Debug.WriteLine("Added ChannelEndpointElement for : " + BINDING_NAME);
                }

                if (!sectionGroup.Extensions.BindingElementExtensions.ContainsKey(BINDINGELEM_NAME))
                {
                    ExtensionElement ext = new ExtensionElement(BINDINGELEM_NAME, bindingElementExtensionType.FullName + "," + bindingElementExtensionType.Assembly.FullName);
                    sectionGroup.Extensions.BindingElementExtensions.Add(ext);
                }

                if (!sectionGroup.Extensions.BindingExtensions.ContainsKey(BINDING_NAME))
                {
                    ExtensionElement ext = new ExtensionElement(BINDING_NAME, bindingSectionType.FullName + "," + bindingSectionType.Assembly.FullName);
                    sectionGroup.Extensions.BindingExtensions.Add(ext);
                }

                config.Save();
            }
            else
            {
                throw new InstallException("Machine.Config doesn't contain system.serviceModel node");
            }
        }
Пример #29
0
        /// <summary>
        /// 从本地config文件中读取meta配置
        /// </summary>
        /// <param name="settings"></param>
        /// <returns></returns>
        private static MetaSourceMappingsConfigurationSection LoadMetaSourceInstanceSectionFromLocal(ConfigFilesSetting settings)
        {
            System.Configuration.Configuration config = CoreHelper.EnvironmentHelper.Mode == EnumInstanceMode.Web
                                ? GetStandardWebConfiguration(settings.MetaConfigurationFile)
                                : getStandardExeConfiguration(settings.MachineConfigurationFile, LocalConfigurationFile);

            MetaConfigurationSectionGroup group =
                config.GetSectionGroup(MetaConfigurationSectionGroupItem) as MetaConfigurationSectionGroup;
            MetaSourceMappingsConfigurationSection section = null;

            if (group != null)
            {
                section = group.SourceMappings;
            }
            return(section);
        }
Пример #30
0
        public static void LoadConfiguration()
        {
            if (config == null)
            {
                config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
            }

            DataBaseSettingsGroup = config.GetSectionGroup("DataBaseSetings");

            if (DataBaseSettingsGroup == null)
            {
                createDataBaseSetingsGroup();
            }

            DataBaseSettingsList = GetDataBaseSettings();
        }
Пример #31
0
        /// <summary>
        /// Gets the monahrq section group.
        /// </summary>
        /// <param name="config">The configuration.</param>
        /// <returns></returns>
        public static ConfigurationSectionGroup GetMonahrqSectionGroup(this System.Configuration.Configuration config)
        {
            var group = config.GetSectionGroup("MonahrqConfigurationSectionGroup");

            if (group == null)
            {
                group = new ConfigurationSectionGroup();
                config.SectionGroups.Add("MonahrqConfigurationSectionGroup", group);
                var section = new MonahrqConfigurationSection();
                section.SectionInformation.AllowExeDefinition = ConfigurationAllowExeDefinition.MachineToLocalUser;
                group.Sections.Add(MonahrqConfigurationSection.MonahrqConfigurationSectionSectionName, section);

                config.Save(ConfigurationSaveMode.Minimal);
            }
            return(group);
        }
Пример #32
0
        private static T GetSectionGroupInstance <T>(string sectionGroupName) where T : ConfigurationSectionGroup
        {
            if (string.IsNullOrEmpty(sectionGroupName))
            {
                return(Activator.CreateInstance <T>());
            }

            System.Configuration.Configuration appConfig =
                ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

            ConfigurationSectionGroup instance = appConfig.GetSectionGroup(sectionGroupName);

            return((instance == null || !typeof(T).IsAssignableFrom(instance.GetType()))
                ? Activator.CreateInstance <T>()
                : instance as T);
        }
    public static void GetRoleServiceSection()
    {
        //<snippet4>
        // Get the Web application configuration.
        System.Configuration.Configuration configuration =
            WebConfigurationManager.OpenWebConfiguration("/aspnetTest");

        // Get the external Web services section.
        ScriptingWebServicesSectionGroup webServicesSection =
            (ScriptingWebServicesSectionGroup)configuration.GetSectionGroup(
                "system.web.extensions/scripting/webServices");

        // Get the role service section.
        ScriptingRoleServiceSection roleSection =
            webServicesSection.RoleService;
        //</snippet4>
    }
Пример #34
0
 /// <summary>
 /// 启动全部服务
 /// </summary>
 public bool StartServices()
 {
     try
     {
         _hosts     = new List <ServiceHost>();
         _dtService = new DataTable();
         _dtService.Columns.Add("ServiceName");
         _dtService.Columns.Add("ServiceStatus");
         _dtService.Columns.Add("ServiceMemo");
         _dtService.Columns.Add("ServiceContent");
         string serviceDesc = "";
         int    numID       = 0;
         //配置文件
         System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(_path);
         //配置的所有服务
         ServiceModelSectionGroup serviceGroup = (ServiceModelSectionGroup)config.GetSectionGroup("system.serviceModel");
         foreach (ServiceElement el in serviceGroup.Services.Services)
         {
             try
             {
                 Type serviceType = Assembly.Load("WCFWeb.Co").GetType(el.Name);
                 if (serviceType == null)
                 {
                     throw new Exception("Invalid Service Type " + el.Name + " in configuration file.");
                 }
                 StartService(serviceType, numID++);//启动服务
                 serviceDesc = GetServiceDescription(serviceType.GetCustomAttributes(typeof(DescriptionAttribute), false), serviceType.Name);
                 AddServiceToDataTable(serviceDesc, "运行", el.Name, "");
             }
             catch (Exception ex)
             {
                 AddServiceToDataTable(el.Name, "失败", el.Name, ex.Message);
             }
         }
         Console.WriteLine("ApiHost服务启动成功!");
         Console.ReadLine();
         return(true);
     }
     catch (Exception ex)
     {
         Console.WriteLine("ApiHost服务启动失败!");
         Console.WriteLine(ex.Message);
         WriteExceptionLog(ex);
         return(false);
     }
 }
Пример #35
0
        /// <summary>
        /// Unregisters the adapter with WCF configuration
        /// </summary>
        public static void RemoveMachineConfigurationInfo(System.Configuration.Configuration config)
        {
            ServiceModelSectionGroup sectionGroup = config.GetSectionGroup("system.serviceModel") as ServiceModelSectionGroup;
            ChannelEndpointElement   elemToRemove = null;

            if (sectionGroup != null)
            {
                // Remove <client><endpoint>
                foreach (ChannelEndpointElement elem in sectionGroup.Client.Endpoints)
                {
                    if (elem.Binding.Equals(BINDING_NAME, StringComparison.OrdinalIgnoreCase) &&
                        elem.Name.Equals(BINDING_SCHEME, StringComparison.OrdinalIgnoreCase) &&
                        elem.Contract.Equals("IMetadataExchange", StringComparison.OrdinalIgnoreCase))
                    {
                        elemToRemove = elem;
                        break;
                    }
                }
                if (elemToRemove != null)
                {
                    Debug.WriteLine("Removing ChannelEndpointElement for : " + BINDING_NAME);

                    sectionGroup.Client.Endpoints.Remove(elemToRemove);

                    Debug.WriteLine("Removed ChannelEndpointElement for : " + BINDING_NAME);
                }
                // Remove <bindingExtension> for this adapter
                if (sectionGroup.Extensions.BindingExtensions.ContainsKey(BINDING_NAME))
                {
                    sectionGroup.Extensions.BindingExtensions.RemoveAt(BINDING_NAME);
                }
                // Remove <bindingElementExtension> for this adapter
                if (sectionGroup.Extensions.BindingElementExtensions.ContainsKey(BINDINGELEM_NAME))
                {
                    sectionGroup.Extensions.BindingElementExtensions.RemoveAt(BINDINGELEM_NAME);
                }

                config.Save();
            }
            else
            {
                throw new ApplicationException("Machine.Config doesn't contain system.serviceModel node");
            }
        }
Пример #36
0
        //public static void CreateHttpHandler(SystemWebSectionGroup websec)
        //{
        //    HttpHandlersSection httpHandlers = websec.HttpHandlers;
        //    bool found = false;
        //    foreach (HttpHandlerAction handler in httpHandlers.Handlers)
        //    {
        //        if (handler.Path == UniHttpHandler.HandlerPath)
        //        {
        //            found = true;
        //            break;
        //        }
        //    }
        //    if (!found)
        //    {
        //        HttpHandlerAction handler = new HttpHandlerAction(UniHttpHandler.HandlerPath, "Unicorn.Web.Security.JcoHttpHandler, Unicorn.Web", "*");
        //        httpHandlers.Handlers.Add(handler);
        //    }
        //}
        private static void InitConfigSections(ref System.Configuration.Configuration conf)
        {
            if (conf.GetSectionGroup("uniSecurity") != null)
            {
                return;
            }
            XmlDocument doc = new XmlDocument();

            doc.Load(conf.FilePath);
            XmlNode confNode     = doc["configuration"];
            XmlNode confSections = confNode["configSections"];

            if (confSections == null)
            {
                confSections = doc.CreateElement("configSections");
                confNode.InsertBefore(confSections, confNode.FirstChild);
            }
            if (!HasJcoSecurityInConfigSection(confSections))
            {
                XmlElement   jcoSec = doc.CreateElement("sectionGroup");
                XmlAttribute attr   = doc.CreateAttribute("name");
                attr.Value = "uniSecurity";
                jcoSec.Attributes.Append(attr);
                attr       = doc.CreateAttribute("type");
                attr.Value = "Unicorn.Web.Security.Configuration.UniSecuritySectionGroup, Unicorn.Web";
                jcoSec.Attributes.Append(attr);

                XmlElement masterPage = doc.CreateElement("section");
                attr       = doc.CreateAttribute("name");
                attr.Value = "masterPage";
                masterPage.Attributes.Append(attr);
                attr       = doc.CreateAttribute("type");
                attr.Value = "Unicorn.Web.Security.Configuration.MasterPageSection, Unicorn.Web";
                masterPage.Attributes.Append(attr);

                jcoSec.AppendChild(masterPage);
                confSections.AppendChild(jcoSec);

                CreateJcoSecuritySection(confNode);
                doc.Save(conf.FilePath);
                conf = ConfigUtility.GetConfigFile();
            }
        }
Пример #37
0
 public static SmtpMailer Instance(Configuration configuration)
 {
     _mailSettings = configuration.GetSectionGroup("system.net/mailSettings") as MailSettingsSectionGroup;
     return _instance ?? (_instance = new SmtpMailer());
 }
 static public NetSectionGroup GetSectionGroup(Configuration config)
 {
     if (config == null)
         throw new ArgumentNullException("config");
     return config.GetSectionGroup(ConfigurationStrings.SectionGroupName) as NetSectionGroup;
 }
Пример #39
0
		//修改applicationSettings
		private void SetDisUrl(WsConfig wsconfig, Configuration config)
		{			
			ApplicationSettingsGroup appSection = config.GetSectionGroup("applicationSettings") as ApplicationSettingsGroup;			
			ClientSettingsSection css = appSection.Sections[0] as ClientSettingsSection;

			SettingElement se = css.Settings.Get("CM_EDI_Service_DocumentManagement_WSTosEdiInterface_WSTosEdiInterface");
			if (se != null)
			{
				css.Settings.Remove(se);
				se.Value.ValueXml.InnerXml = string.Format("http://{0}:{1}/Service.asmx", IISWorker.GetIp(), wsconfig.DISInterAPIServerSitePort);
				css.Settings.Add(se);
			}
			se = css.Settings.Get("CM_CTOS_BLL_BLLWebProxy_WSEdiTosInterface_WsEdiTosInterface");
			if (se != null)
			{
				css.Settings.Remove(se);
				se.Value.ValueXml.InnerXml = string.Format("http://{0}:{1}/Service.asmx", IISWorker.GetIp(), wsconfig.EdiServerSitePort);
				css.Settings.Add(se);
			}
			se = css.Settings.Get("TosPACSAddress");
			if (se != null)
			{
				css.Settings.Remove(se);
				se.Value.ValueXml.InnerXml = string.Format("http://{0}:{1}/Service.asmx", IISWorker.GetIp(), wsconfig.RpcDomainPort);
				css.Settings.Add(se);
			}
			se = css.Settings.Get("CM_CTOS_BLL_BLLWebProxy_WSBaseDataSearchForBilling_WSBaseDataSearch");
			if (se != null)
			{
				string url = string.IsNullOrEmpty(wsconfig.BillingDataServerSitePath) ? se.Value.ValueXml.InnerText = wsconfig.BillingDataServerSite :string.Format("http://{0}:{1}/{2}/Service.asmx", IISWorker.GetIp(), wsconfig.BillingDataServerSitePort, wsconfig.BillingDataServerSite);

				css.Settings.Remove(se);
				se.Value.ValueXml.InnerXml = url;
				css.Settings.Add(se);
			}
			se = css.Settings.Get("CM_CTOS_BLL_BLLWebProxy_WSBillingExternalInterface_WSBillingExternalInterface");
			if (se != null)
			{
				string url = string.IsNullOrEmpty(wsconfig.BillingInternelServerSitePath) ? se.Value.ValueXml.InnerText = wsconfig.BillingInternelServerSite :string.Format("http://{0}:{1}/{2}/Service.asmx", IISWorker.GetIp(), wsconfig.BillingInternelServerSitePort);

				css.Settings.Remove(se);
				se.Value.ValueXml.InnerXml = url;
				css.Settings.Add(se);
			}
		}
Пример #40
0
        private static void GenerateEnvironmentConfiguration(Configuration envConfig, Configuration mainConfig)
        {
            // Connection strings
            foreach (ConnectionStringSettings connectionString in envConfig.ConnectionStrings.ConnectionStrings)
            {
                if (connectionString.Name == "LocalSqlServer") continue;
                mainConfig.ConnectionStrings.ConnectionStrings[connectionString.Name].ConnectionString =
                    connectionString.ConnectionString;
            }

            // app settings
            foreach (KeyValueConfigurationElement setting in envConfig.AppSettings.Settings)
            {
                mainConfig.AppSettings.Settings[setting.Key].Value = setting.Value;
            }

            // applicationSettings
            var group = envConfig.GetSectionGroup("applicationSettings");
            if (group != null)
            {
                foreach (ConfigurationSection section in group.Sections)
                {
                    if (!(section is ClientSettingsSection)) continue;

                    var s = (ClientSettingsSection)section;

                    var mainGroup = mainConfig.GetSectionGroup("applicationSettings");
                    if (mainGroup == null)
                    {
                        mainConfig.SectionGroups.Add("applicationSettings", group);
                        break;
                    }

                    var mainS = mainGroup.Sections.Get(s.SectionInformation.Name) as ClientSettingsSection;
                    if (mainS == null)
                    {
                        mainGroup.Sections.Add(s.SectionInformation.Name, s);
                    }
                    else
                    {
                        foreach (SettingElement setting in s.Settings)
                        {
                            var toRemove = mainS.Settings.Get(setting.Name);
                            if (toRemove != null)
                            {
                                mainS.Settings.Remove(toRemove);
                            }

                            mainS.Settings.Add(setting);
                        }
                    }
                }
            }

            mainConfig.Save();
        }
Пример #41
0
       /// <summary>
       /// Elimina una seccion de la Configuration /  applicationSettings
       /// </summary>
       /// <param name="pConfiguration">Configuration App.Config</param>
       /// <param name="pSectionName">Nombre de la seccion</param>
      internal  static void RemoveSection(Configuration pConfiguration, String pSectionName)
       {
           ConfigurationSectionGroup wSectionGroup = pConfiguration.GetSectionGroup("applicationSettings");

           ConfigurationSection wSection = wSectionGroup.Sections.Get(pSectionName);//ConfigurationSection wSection = pConfiguration.GetSection("applicationSettings/" + pSectionName);
           wSection.SectionInformation.ForceSave = true;
           pConfiguration.GetSectionGroup("applicationSettings").Sections.Remove(pSectionName);

           pConfiguration.Sections.Remove(pSectionName);
       }
Пример #42
0
       internal static void Add_SettingInSection(Configuration pConfiguration,
           String pSectionName,
           String pSectionGroupName,
           String pSettingName,String settingValue)
       {
           ConfigurationSectionGroup wConfigurationSectionGroup = null;
           //SettingElement wSettingElement = null;
           XmlDocument doc = new XmlDocument();
           XmlNode xmlValue = doc.CreateNode(XmlNodeType.Element, "value", String.Empty);
           ConfigurationSectionCollection wSections = null;
           if (pSectionGroupName.Length == 0)
           {
               AddSectionFromAssembly(pConfiguration, pSectionName);
               return;
           }
           else
           {
               wConfigurationSectionGroup = pConfiguration.GetSectionGroup(pSectionGroupName);
               if (wConfigurationSectionGroup == null)
                   wConfigurationSectionGroup = AddSectionGroup(pConfiguration, pSectionGroupName);
               wSections = wConfigurationSectionGroup.Sections;
           }

           ConfigurationSection wConfigurationSection = wSections.Get(pSectionName);
           ClientSettingsSection wClientSettingsSection = (ClientSettingsSection)wConfigurationSection;
           wClientSettingsSection.SectionInformation.RequirePermission = false;
           wClientSettingsSection.SectionInformation.ForceSave = true;

           #region Settings
           //wClientSettingsSection.Settings.Get(pSettingName);

           SettingElement wSettingElement = new SettingElement();
           wSettingElement.Name = pSettingName;
           xmlValue.InnerXml = settingValue;
           wSettingElement.Value.ValueXml = xmlValue.Clone();
           wClientSettingsSection.Settings.Add(wSettingElement);

           #endregion

       }
Пример #43
0
        /// ------------------------------------------------------------------------------------
        /// <summary>
        /// Gets the section <paramref name="sectionName"/> in the section group "userSettings".
        /// </summary>
        /// ------------------------------------------------------------------------------------
        private static ClientSettingsSection GetSection(Configuration config, string sectionName,
			string sectionGroup = "userSettings")
        {
            var userSettingsGroup = config.GetSectionGroup(sectionGroup);
            if (userSettingsGroup == null)
            {
                userSettingsGroup = new ConfigurationSectionGroup();
                config.SectionGroups.Add(sectionGroup, userSettingsGroup);
            }
            var section = userSettingsGroup.Sections[sectionName] as ClientSettingsSection;
            if (section == null)
            {
                section = new ClientSettingsSection();
                userSettingsGroup.Sections.Add(sectionName, section);
            }
            return section;
        }
Пример #44
0
		public static void RemoveSettingsValues(SystemConfiguration configuration, Type settingsClass)
		{
			var sectionPath = new ConfigurationSectionPath(settingsClass, SettingScope.Application);
			ConfigurationSectionGroup group = configuration.GetSectionGroup(sectionPath.GroupPath);
			if (group != null)
				group.Sections.Remove(sectionPath.SectionName);

			sectionPath = new ConfigurationSectionPath(settingsClass, SettingScope.User);
			group = configuration.GetSectionGroup(sectionPath.GroupPath);
			if (group != null)
				group.Sections.Remove(sectionPath.SectionName);

			configuration.Save(ConfigurationSaveMode.Minimal, true);
		}
Пример #45
0
		/// <summary>
		/// Uses the <c>system.net/mailSettings</c> section of the 
		/// provided <see cref="Castle.MonoRail.Framework.Configuration"/> to populate this
		/// <see cref="SmtpConfig"/>
		/// </summary>
		/// <param name="configuration">The configuration.</param>
		public void ConfigureFromConfig(Configuration configuration)
		{
			if (configuration == null)
			{
				throw new ArgumentNullException("configuration");
			}
			MailSettingsSectionGroup mailSettings = configuration.GetSectionGroup("system.net/mailSettings") as MailSettingsSectionGroup;

			if (mailSettings != null && mailSettings.Smtp != null && mailSettings.Smtp.Network != null)
			{
				SmtpNetworkElement network = mailSettings.Smtp.Network;
				Host = network.Host;
				Password = network.Password;
				Username = network.UserName;
				Port = network.Port;
			}
			else
			{
				throw new ConfigurationErrorsException("Could not find the system.net/mailSettings/smtp/network element in the application configuration");
			}
		}
Пример #46
0
        /// <summary>
        /// Gets the <see cref="SettingElementCollection"/> for the specified section name within
        /// the specified configuration.
        /// </summary>
        /// <param name="config">The <see cref="Configuration"/> object.</param>
        /// <param name="sectionName">The settings section name.</param>
        /// <returns>
        /// A <see cref="SettingElementCollection"/> for the section, or an empty section if not found.
        /// </returns>
        private static SettingElementCollection GetSettingElementCollection(Configuration config, string sectionName)
        {
            var userSettings = config.GetSectionGroup("userSettings");
            if (userSettings == null)
            {
                userSettings = new UserSettingsGroup();
                config.SectionGroups.Add("userSettings", userSettings);
            }

            var section = userSettings.Sections.Get(sectionName) as ClientSettingsSection;
            if (section == null)
            {
                section = new ClientSettingsSection();
                userSettings.Sections.Add(sectionName, section);
            }

            return section.Settings;
        }