EasyExtensions.BackgroundServiceExtensions
0.2.2
dotnet add package EasyExtensions.BackgroundServiceExtensions --version 0.2.2
NuGet\Install-Package EasyExtensions.BackgroundServiceExtensions -Version 0.2.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EasyExtensions.BackgroundServiceExtensions" Version="0.2.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EasyExtensions.BackgroundServiceExtensions --version 0.2.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: EasyExtensions.BackgroundServiceExtensions, 0.2.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install EasyExtensions.BackgroundServiceExtensions as a Cake Addin #addin nuget:?package=EasyExtensions.BackgroundServiceExtensions&version=0.2.2 // Install EasyExtensions.BackgroundServiceExtensions as a Cake Tool #tool nuget:?package=EasyExtensions.BackgroundServiceExtensions&version=0.2.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
BackgroundServiceExtensions
Step by step guide
1. Install nuget package
Install-Package EasyExtensions.BackgroundServiceExtensions
2. Create a class which will be executed by schedule:
public class MyBackgroundService : ScheduledServiceBase
{
private readonly IServiceProvider _serviceProvider;
public MyBackgroundService(ScheduledServiceOptions<MyBackgroundService> options, IServiceProvider serviceProvider) : base(options.Expression)
{
_serviceProvider = serviceProvider;
}
public override Task ExecuteJobAsync(CancellationToken cancellationToken)
{
using (var scope = _serviceProvider.CreateScope())
{
// code to be executed by schedule
}
return Task.CompletedTask;
}
}
3. Register the class in the Startup:
public void ConfigureServices(IServiceCollection services)
{
// other registrations
services.AddScheduledService<MyBackgroundService>(Configuration);
}
4. Add a section to appsettings.json:
{
//other configuration
"ScheduledServices": {
"MyBackgroundService": {
"Expression": "*/1 * * * *",
"Enabled": true
}
}
}
5. Change CRON expression to whatever you want to.
If you are not familiar with CRON expression I can recommend this tool to start with.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.1 is compatible. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETCoreApp 3.1
- Cronos (>= 0.7.0)
- Microsoft.Extensions.DependencyInjection (>= 3.1.10)
- Microsoft.Extensions.Hosting (>= 3.1.10)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Added project url and link to