Skip to content

Commit

Permalink
[Joker.OData] - program file migrated to Top-level statements
Browse files Browse the repository at this point in the history
  • Loading branch information
tomasfabian committed Feb 8, 2024
1 parent be7297b commit 0f0edcd
Showing 1 changed file with 43 additions and 52 deletions.
95 changes: 43 additions & 52 deletions Samples/OData/SelfHostedODataService.EFCore/Program.cs
Original file line number Diff line number Diff line change
@@ -1,63 +1,54 @@
using System;
using System.Threading.Tasks;
using Joker.OData.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using SelfHostedODataService.EFCore;
using SelfHostedODataService.EFCore.HostedServices;
using SelfHostedODataService.HostedServices;
using Serilog;

namespace SelfHostedODataService.EFCore
var startupSettings = new KestrelODataWebHostConfig()
{
public class Program
ConfigureServices = services =>
{
public static async Task Main(string[] args)
{
var startupSettings = new KestrelODataWebHostConfig()
{
ConfigureServices = services =>
{
services.AddHostedService<ProductChangesHostedService>();
services.AddHostedService<SqlTableDependencyProviderHostedService>();
}
};

ConfigureLogging();

await new ODataHost().RunAsync(args, startupSettings);
}

private static void ConfigureLogging()
{
var baseDir = AppDomain.CurrentDomain.BaseDirectory;

Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.WriteTo.Console()
.WriteTo.File($@"{baseDir}\logs\{nameof(ODataHost)}_.txt", rollingInterval: RollingInterval.Day)
.CreateLogger();

Log.Information("Hello, world!");
}

#region IISODataWebHostConfig example

private static ODataWebHostConfig ODataStartupConfigExample()
{
var configuration = new ConfigurationBuilder()
.AddEnvironmentVariables()
.Build();

var startupSettings = new IISODataWebHostConfig()
{
ConfigureServices = services => { services.AddHostedService<SqlTableDependencyProviderHostedService>(); },
Urls = new[] { @"https://localhost:32778/" },
Configuration = configuration
};

return startupSettings;
}

#endregion
services.AddHostedService<ProductChangesHostedService>();
services.AddHostedService<SqlTableDependencyProviderHostedService>();
}
}
};

ConfigureLogging();

await new ODataHost().RunAsync(args, startupSettings);

static void ConfigureLogging()
{
var baseDir = AppDomain.CurrentDomain.BaseDirectory;

Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.WriteTo.Console()
.WriteTo.File($@"{baseDir}\logs\{nameof(ODataHost)}_.txt", rollingInterval: RollingInterval.Day)
.CreateLogger();

Log.Information("Hello, world!");
}

#region IISODataWebHostConfig example

static ODataWebHostConfig ODataStartupConfigExample()
{
var configuration = new ConfigurationBuilder()
.AddEnvironmentVariables()
.Build();

var startupSettings = new IISODataWebHostConfig()
{
ConfigureServices = services => { services.AddHostedService<SqlTableDependencyProviderHostedService>(); },
Urls = ["https://localhost:32778/"],
Configuration = configuration
};

return startupSettings;
}

#endregion

0 comments on commit 0f0edcd

Please sign in to comment.