我正在使用带有ASP.NET Core 2.0的C#的REST API开发Web应用程序。
我要实现的是,当客户端向端点发送请求时,我将运行与客户端请求上下文分离的后台任务,如果任务成功启动,该任务将结束。
我知道有HostedService问题,但是问题是HostedService服务器启动时启动,据我所知,没有办法HostedService从控制器手动启动。
这是一个演示该问题的简单代码。
[Authorize(AuthenticationSchemes = "UsersScheme")]
public class UsersController : Controller
{
[HttpPost]
public async Task<JsonResult> StartJob([FromForm] string UserId, [FromServices] IBackgroundJobService backgroundService)
{
// check user account
(bool isStarted, string data) result = backgroundService.Start();
return JsonResult(result);
}
}
千巷猫影
慕森王
相关分类