本文整理汇总了C#中Microsoft.Framework.Configuration.ConfigurationBuilder.Bind方法的典型用法代码示例。如果您正苦于以下问题:C# ConfigurationBuilder.Bind方法的具体用法?C# ConfigurationBuilder.Bind怎么用?C# ConfigurationBuilder.Bind使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Framework.Configuration.ConfigurationBuilder
的用法示例。
在下文中一共展示了ConfigurationBuilder.Bind方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Start
/// <summary>
/// Start service.
/// </summary>
public void Start() {
if (!File.Exists("config.json")) {
Logger.Error("Configuration file \"config.json\" was not found in the application directory!");
return;
}
// configuration
var configurationBuilder = new ConfigurationBuilder().AddJsonFile("config.json").Build();
var configuration = new Configuration.Configuration();
configurationBuilder.Bind(configuration);
// do the dirty work
foreach (var mailBox in configuration.MailBoxes) {
var cancellationTokenSource = Scheduler.Interval(mailBox.Interval, () => {
var mailBoxProcessor = new MailBoxProcessor(mailBox);
try {
mailBoxProcessor.Process();
}
catch (Exception ex) {
Logger.Error($"Could not process the MailBox {mailBox.Identifier}!", ex);
}
});
_cancellationTokenSources.Add(cancellationTokenSource);
}
}
示例2: Main
public void Main(string[] args)
{
var runtimeConfig = new ConfigurationBuilder()
.AddCommandLine(args)
.Build();
var options = new Options();
runtimeConfig.Bind(options);
var queueConfig = new ConfigurationBuilder(".")
.AddJsonFile("queues.json")
.Build()
.GetSection(options.QueueType);
var services = BuildServiceProvider(options, queueConfig);
var logger = services.GetRequiredService<ILogger<Program>>();
var handlerFactory = services.GetRequiredService<IMessageHandlerFactory>();
var queueFactory = services.GetRequiredService<IMessageQueueFactory>();
var queue = queueFactory.Get(options.ListenTo);
queue.Listen(msg =>
{
var handler = handlerFactory.GetHandler(msg.Body.GetType());
handler.Handle(msg, queue);
});
}