本文整理汇总了C#中Microsoft.Framework.ConfigurationModel.Configuration.AddLoadedSource方法的典型用法代码示例。如果您正苦于以下问题:C# Configuration.AddLoadedSource方法的具体用法?C# Configuration.AddLoadedSource怎么用?C# Configuration.AddLoadedSource使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Framework.ConfigurationModel.Configuration
的用法示例。
在下文中一共展示了Configuration.AddLoadedSource方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CanGetSubKey
public void CanGetSubKey()
{
// Arrange
var dic1 = new Dictionary<string, string>()
{
{"Data:DB1:Connection1", "MemVal1"},
{"Data:DB1:Connection2", "MemVal2"}
};
var dic2 = new Dictionary<string, string>()
{
{"DataSource:DB2:Connection", "MemVal3"}
};
var dic3 = new Dictionary<string, string>()
{
{"Data", "MemVal4"}
};
var memConfigSrc1 = new MemoryConfigurationSource(dic1);
var memConfigSrc2 = new MemoryConfigurationSource(dic2);
var memConfigSrc3 = new MemoryConfigurationSource(dic3);
var config = new Configuration();
config.AddLoadedSource(memConfigSrc1);
config.AddLoadedSource(memConfigSrc2);
config.AddLoadedSource(memConfigSrc3);
string memVal1, memVal2, memVal3, memVal4, memVal5;
bool memRet1, memRet2, memRet3, memRet4, memRet5;
// Act
var configFocus = config.GetSubKey("Data");
memRet1 = configFocus.TryGet("DB1:Connection1", out memVal1);
memRet2 = configFocus.TryGet("DB1:Connection2", out memVal2);
memRet3 = configFocus.TryGet("DB2:Connection", out memVal3);
memRet4 = configFocus.TryGet("Source:DB2:Connection", out memVal4);
memRet5 = configFocus.TryGet(null, out memVal5);
// Assert
Assert.True(memRet1);
Assert.True(memRet2);
Assert.False(memRet3);
Assert.False(memRet4);
Assert.True(memRet5);
Assert.Equal("MemVal1", memVal1);
Assert.Equal("MemVal2", memVal2);
Assert.Equal("MemVal4", memVal5);
Assert.Equal("MemVal1", configFocus.Get("DB1:Connection1"));
Assert.Equal("MemVal2", configFocus.Get("DB1:Connection2"));
Assert.Null(configFocus.Get("DB2:Connection"));
Assert.Null(configFocus.Get("Source:DB2:Connection"));
Assert.Equal("MemVal4", configFocus.Get(null));
Assert.Equal("MemVal1", configFocus["DB1:Connection1"]);
Assert.Equal("MemVal2", configFocus["DB1:Connection2"]);
Assert.Null(configFocus["DB2:Connection"]);
Assert.Null(configFocus["Source:DB2:Connection"]);
Assert.Equal("MemVal4", configFocus[null]);
}
示例2: CanGetSubKeys
public void CanGetSubKeys()
{
// Arrange
var dic1 = new Dictionary<string, string>()
{
{"Data:DB1:Connection1", "MemVal1"},
{"Data:DB1:Connection2", "MemVal2"}
};
var dic2 = new Dictionary<string, string>()
{
{"Data:DB2Connection", "MemVal3"}
};
var dic3 = new Dictionary<string, string>()
{
{"DataSource:DB3:Connection", "MemVal4"}
};
var memConfigSrc1 = new MemoryConfigurationSource(dic1);
var memConfigSrc2 = new MemoryConfigurationSource(dic2);
var memConfigSrc3 = new MemoryConfigurationSource(dic3);
var config = new Configuration();
config.AddLoadedSource(memConfigSrc1);
config.AddLoadedSource(memConfigSrc2);
config.AddLoadedSource(memConfigSrc3);
// Act
var configFocusList = config.GetSubKeys("Data");
var subKeysSet = configFocusList.ToDictionary(e => e.Key, e => e.Value);
// Assert
Assert.Equal(2, configFocusList.Count());
Assert.Equal("MemVal1", subKeysSet["DB1"].Get("Connection1"));
Assert.Equal("MemVal2", subKeysSet["DB1"].Get("Connection2"));
Assert.Equal("MemVal3", subKeysSet["DB2Connection"].Get(null));
Assert.False(subKeysSet.ContainsKey("DB3"));
Assert.False(subKeysSet.ContainsKey("Source:DB3"));
}
示例3: SettingValueUpdatesAllConfigurationSources
public void SettingValueUpdatesAllConfigurationSources()
{
// Arrange
var dict = new Dictionary<string, string>()
{
{"Key1", "Value1"},
{"Key2", "Value2"}
};
var memConfigSrc1 = new MemoryConfigurationSource(dict);
var memConfigSrc2 = new MemoryConfigurationSource(dict);
var memConfigSrc3 = new MemoryConfigurationSource(dict);
var config = new Configuration();
config.AddLoadedSource(memConfigSrc1);
config.AddLoadedSource(memConfigSrc2);
config.AddLoadedSource(memConfigSrc3);
// Act
config.Set("Key1", "NewValue1");
config["Key2"] = "NewValue2";
// Assert
Assert.Equal("NewValue1", config.Get("Key1"));
Assert.Equal("NewValue1", memConfigSrc1.Get("Key1"));
Assert.Equal("NewValue1", memConfigSrc2.Get("Key1"));
Assert.Equal("NewValue1", memConfigSrc3.Get("Key1"));
Assert.Equal("NewValue2", config["Key2"]);
Assert.Equal("NewValue2", memConfigSrc1.Get("Key2"));
Assert.Equal("NewValue2", memConfigSrc2.Get("Key2"));
Assert.Equal("NewValue2", memConfigSrc3.Get("Key2"));
}
示例4: NewConfigurationSourceOverridesOldOneWhenKeyIsDuplicated
public void NewConfigurationSourceOverridesOldOneWhenKeyIsDuplicated()
{
// Arrange
var dic1 = new Dictionary<string, string>()
{
{"Key1:Key2", "ValueInMem1"}
};
var dic2 = new Dictionary<string, string>()
{
{"Key1:Key2", "ValueInMem2"}
};
var memConfigSrc1 = new MemoryConfigurationSource(dic1);
var memConfigSrc2 = new MemoryConfigurationSource(dic2);
var config = new Configuration();
// Act
config.AddLoadedSource(memConfigSrc1);
config.AddLoadedSource(memConfigSrc2);
// Assert
Assert.Equal("ValueInMem2", config.Get("Key1:Key2"));
}
示例5: LoadAndCombineKeyValuePairsFromDifferentConfigurationSources
public void LoadAndCombineKeyValuePairsFromDifferentConfigurationSources()
{
// Arrange
var dic1 = new Dictionary<string, string>()
{
{"Mem1:KeyInMem1", "ValueInMem1"}
};
var dic2 = new Dictionary<string, string>()
{
{"Mem2:KeyInMem2", "ValueInMem2"}
};
var dic3 = new Dictionary<string, string>()
{
{"Mem3:KeyInMem3", "ValueInMem3"}
};
var memConfigSrc1 = new MemoryConfigurationSource(dic1);
var memConfigSrc2 = new MemoryConfigurationSource(dic2);
var memConfigSrc3 = new MemoryConfigurationSource(dic3);
var config = new Configuration();
string memVal1, memVal2, memVal3;
bool memRet1, memRet2, memRet3;
// Act
config.AddLoadedSource(memConfigSrc1);
config.AddLoadedSource(memConfigSrc2);
config.AddLoadedSource(memConfigSrc3);
memRet1 = config.TryGet("mem1:keyinmem1", out memVal1);
memRet2 = config.TryGet("Mem2:KeyInMem2", out memVal2);
memRet3 = config.TryGet("MEM3:KEYINMEM3", out memVal3);
// Assert
Assert.Contains(memConfigSrc1, config.Sources);
Assert.Contains(memConfigSrc2, config.Sources);
Assert.Contains(memConfigSrc3, config.Sources);
Assert.True(memRet1);
Assert.True(memRet2);
Assert.True(memRet3);
Assert.Equal("ValueInMem1", memVal1);
Assert.Equal("ValueInMem2", memVal2);
Assert.Equal("ValueInMem3", memVal3);
Assert.Equal("ValueInMem1", config.Get("mem1:keyinmem1"));
Assert.Equal("ValueInMem2", config.Get("Mem2:KeyInMem2"));
Assert.Equal("ValueInMem3", config.Get("MEM3:KEYINMEM3"));
Assert.Null(config.Get("NotExist"));
Assert.Equal("ValueInMem1", config["mem1:keyinmem1"]);
Assert.Equal("ValueInMem2", config["Mem2:KeyInMem2"]);
Assert.Equal("ValueInMem3", config["MEM3:KEYINMEM3"]);
Assert.Null(config["NotExist"]);
}
示例6: CanIterateWithGenericEnumerator
public void CanIterateWithGenericEnumerator()
{
// Arrange
var dict = new Dictionary<string, string>()
{
{"Mem:KeyInMem", "MemVal"}
};
var memConfigSrc1 = new MemoryConfigurationSource(dict);
var memConfigSrc2 = new MemoryConfigurationSource(dict);
var memConfigSrc3 = new MemoryConfigurationSource(dict);
var srcSet = new HashSet<IConfigurationSource>()
{
memConfigSrc1,
memConfigSrc2,
memConfigSrc3
};
var config = new Configuration();
// Act
config.AddLoadedSource(memConfigSrc1);
config.AddLoadedSource(memConfigSrc2);
config.AddLoadedSource(memConfigSrc3);
// Assert
var enumerator = config.Sources.GetEnumerator();
int srcCount = 0;
while (enumerator.MoveNext())
{
Assert.Contains(enumerator.Current, srcSet);
++srcCount;
}
Assert.Equal(3, srcCount);
}