本文整理汇总了C#中Common.System.GetSection方法的典型用法代码示例。如果您正苦于以下问题:C# System.GetSection方法的具体用法?C# System.GetSection怎么用?C# System.GetSection使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Common.System
的用法示例。
在下文中一共展示了System.GetSection方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Parse
public ParsedSchedules Parse(System.Configuration.Configuration configuration)
{
var sources = new List<ISnapshotProvider>();
var sinks = new List<ISnapshotConsumer>();
var multiSourceSinks = new List<IMultipleSnapshotConsumer>();
var chains = new List<IChain>();
var schedules = new List<ISchedule>();
var preloadSchedules = new List<ISchedule>();
var chainConfigs = new List<ChainConfiguration>();
var preloadScheduleConfigs = new List<ScheduleConfiguration>();
var scheduleConfigs = new List<ScheduleConfiguration>();
// Simple configurations
foreach(var builder in DiscoveredBuilders)
{
var allComponentSets = builder.Value.Instance.Build(configuration);
foreach (var components in allComponentSets)
{
sources.AddRange(components.Sources);
sinks.AddRange(components.Sinks);
multiSourceSinks.AddRange(components.Multisinks);
chainConfigs.Add(components.Chains);
preloadScheduleConfigs.Add(components.PreloadSchedules);
scheduleConfigs.Add(components.Schedules);
}
}
foreach(var sinkBuilder in DiscoveredSinkBuilders)
{
schedules.AddRange(sinkBuilder.Value.Instance.Build(configuration, sources));
}
// ProcessCountingSources
var processCountingSourceConfiguration =
configuration.GetSection("processCountingSources") as ProcessCountingSourceConfiguration;
if (processCountingSourceConfiguration != null)
{
sources.AddRange(ProcessCountingSourceBuilder.Build(processCountingSourceConfiguration));
}
// ProcessUptimeSources
var processUptimeSourceConfiguration =
configuration.GetSection("processUptimeSources") as ProcessUptimeSourceConfiguration;
if (processUptimeSourceConfiguration != null)
{
sources.AddRange(ProcessUptimeSourceBuilder.Build(processUptimeSourceConfiguration));
}
// PerformanceCounterDataSources
var performanceCounterSourceConfiguration =
configuration.GetSection("performanceCounterSources") as PerformanceCounterDataSourceConfiguration;
if (performanceCounterSourceConfiguration != null)
{
sources.AddRange(PerformanceCounterDataSourceBuilder.Build(performanceCounterSourceConfiguration));
}
// SqlServerDataSources
var sqlServerDataSourceConfiguration =
configuration.GetSection("databaseSources") as SqlServerDataSourceConfiguration;
if (sqlServerDataSourceConfiguration != null)
{
sources.AddRange(SqlServerDataSourceBuilder.Build(sqlServerDataSourceConfiguration));
}
// CircularDataSinks
var circularDataSinkConfiguration = configuration.GetSection("circularDataSinks") as CircularDataSinkConfiguration;
if (circularDataSinkConfiguration != null)
{
var circularDataSinks = CircularDataSinkBuilder.Build(circularDataSinkConfiguration);
sources.AddRange(circularDataSinks);
sinks.AddRange(circularDataSinks);
}
// FileSystemDataStores
var fileSystemDataStoreConfiguration =
configuration.GetSection("fileSystemDataStores") as FileSystemDataStoreConfiguration;
if (fileSystemDataStoreConfiguration != null)
{
var stores = FileSystemDataStoreBuilder.Build(fileSystemDataStoreConfiguration);
sinks.AddRange(stores);
sources.AddRange(stores);
}
// MultiPlotters
var multiPlotterConfiguration = configuration.GetSection("multiPlotters") as PlotterConfiguration;
if (multiPlotterConfiguration != null)
{
multiSourceSinks.AddRange(MultiPlotterBuilder.Build(multiPlotterConfiguration));
}
//.........这里部分代码省略.........