Dipper/Dipper.Alioth/Web/StarHost.cs

41 lines
814 B
C#

using Dipper.Alioth.Options;
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;
namespace Dipper.Alioth.Web;
public class StarHost
{
private StarHost()
{
}
public StarHost CreateHost()
{
return new StarHost();
}
public void Run(string[] args, Action<StarOption> action)
{
var app = Configure(args, action);
app.Run();
}
public Task RunAsync(string[] args, Action<StarOption> action)
{
var app = Configure(args, action);
return app.RunAsync();
}
private WebApplication Configure(string[] args, Action<StarOption> action)
{
var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();
return app;
}
}