File: Program.cs
Web Access
Project: src\playground\AzureKusto\AzureKusto.Worker\AzureKusto.Worker.csproj (AzureKusto.Worker)
using AzureKusto.Worker;
using Kusto.Data;
using Kusto.Data.Net.Client;
 
var builder = Host.CreateApplicationBuilder(args);
builder.AddServiceDefaults();
 
builder.Services.AddSingleton(sp =>
{
    var config = sp.GetRequiredService<IConfiguration>();
    var connectionString = config.GetConnectionString("testdb");
    return new KustoConnectionStringBuilder(connectionString);
});
builder.Services.AddSingleton(sp =>
{
    var kcsb = sp.GetRequiredService<KustoConnectionStringBuilder>();
    return KustoClientFactory.CreateCslQueryProvider(kcsb);
});
builder.Services.AddSingleton(sp =>
{
    var kcsb = sp.GetRequiredService<KustoConnectionStringBuilder>();
    return KustoClientFactory.CreateCslAdminProvider(kcsb);
});
 
builder.Services.AddOptions<WorkerOptions>();
 
builder.Services.AddHostedService<QueryWorker>();
if (builder.Environment.IsDevelopment())
{
    builder.Services.AddHostedService<IngestionWorker>();
}
 
var app = builder.Build();
 
app.Run();