コード例 #1
0
        public void CreateSettingsKeyName_WithGlobalConfigKey_CreatesGlobalSettingsKey(string settingsKeyName, string siteName, string categoryName, bool useCategorySections)
        {
            var options = new CmsSettingsConfigBuilderOptions
            {
                UseCategorySections = useCategorySections
            };

            var sut = new CmsSettingConfigKeyNameFactory(Configuration, options);

            var    setting   = new CmsSetting(settingsKeyName, string.Empty, categoryName, siteName);
            string configKey = sut.CreateConfigKeyName(setting);

            SettingsKeyName actual = sut.CreateSettingsKeyName(configKey);

            Assert.Multiple(() =>
            {
                Assert.That(actual.KeyName, Is.EqualTo(settingsKeyName));
                Assert.That(actual.SiteName, Is.Empty);
                Assert.IsTrue(actual.IsGlobal);
            });
        }
コード例 #2
0
        public void CreateSettingsKeyName_WithKeyPrefix_RestoresPrefixWhenStripped(string siteName, string categoryName, string keyPrefix, string keyName, bool stripPrefix, bool useCategorySections)
        {
            var options = new CmsSettingsConfigBuilderOptions
            {
                UseCategorySections = useCategorySections,
                KeyPrefix           = keyPrefix,
                StripPrefix         = stripPrefix
            };

            var sut = new CmsSettingConfigKeyNameFactory(Configuration, options);

            string settingsKeyName = $"{keyPrefix}{keyName}";

            var    setting   = new CmsSetting(settingsKeyName, string.Empty, categoryName, siteName);
            string configKey = sut.CreateConfigKeyName(setting);

            SettingsKeyName actual = sut.CreateSettingsKeyName(configKey);

            Assert.That(
                actual.KeyName,
                Does.StartWith(keyPrefix)
                );
        }
コード例 #3
0
        public string GetValue(string key)
        {
            try
            {
                if (string.IsNullOrEmpty(key))
                {
                    return(null);
                }

                SettingsKeyName settingsKeyName = configKeyNameFactory.CreateSettingsKeyName(key);

                return(SettingsKeyInfoProvider.GetValue(settingsKeyName));
            }
            catch (Exception)
            {
                if (!options.Optional)
                {
                    throw;
                }
            }

            return(null);
        }