Pazyn.StartupTasks
1.0.0
Pazyn.StartupTasks 、アプリケーションが開始されたときにタスクを実行するためのライブラリです。たとえば、データベースを移行したり、構成を検証したり、許可を同期したり、キャッシュを設定したりできます。スタートアップタスクは、ブロッキングとノンブロッキングの2つのモードで動作するように個別に構成できます。ブロッキングとは、タスクが完了するまですべての要求がブロックされることを意味します。セカンドモードは、タスクが完了するまで503 HTTP応答コードを生成するMedod RequireStartupTaskでマークされたルートをガードします。
public class SillyStartupTask : IStartupTask
{
public Task<Boolean> Run(CancellationToken cancellationToken) => Task.FromResult(true);
}
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddHealthChecks()
.AddStartupTasks();
services.AddStartupTasks()
.AddStartupTask<SillyStartupTask>();
}
public void Configure(IApplicationBuilder app, IConfiguration configuration)
{
app.UseRouting();
app.UseStartupTasks();
app.UseEndpoints(endpoints =>
{
endpoints.MapHealthChecks("/health");
endpoints.MapGet("/", context => context.Response.WriteAsync("Hello World!"))
.RequireStartupTask();
});
}
}
作品は以下に触発されました。
彼のブログ投稿を見てください: