发布后运行一次功能

时间:2018-10-02 21:23:54

标签: asp.net-core

我有一个ASP Net Core API。

我只希望在发布后仅运行一次函数,即可将所有图像转换并调整为更轻量的版本。

我遇到的问题是我希望此功能仅运行一次。我找不到办法。

1 个答案:

答案 0 :(得分:0)

如果要从程序中调用函数,则cutsom发布过程无法实现。

要解决此问题,您可以尝试实现诸如将数据播种到数据库之类的要求。

var host = BuildWebHost(args);

using (var scope = host.Services.CreateScope())
{
var services = scope.ServiceProvider;

try
{
    //check whether the images has been resized
    //if not, call function to resize.
}
catch (Exception ex)
{
    var logger = services.GetRequiredService<ILogger<Program>>();
    logger.LogError(ex, "An error occurred seeding the DB.");
}
}

host.Run();

或者,您可以尝试实现中间件来检查图像是否已调整大小。