I have a console application to test HangFire. Here is the code:
using System; using Hangfire;  namespace MyScheduler.ConsoleApp {     internal static class Program     {         internal static void Main(string[] args)         {             MyMethod();              Console.WriteLine("[Finished]");             Console.ReadKey();         }          private static void MyMethod()         {             RecurringJob.AddOrUpdate(() => Console.Write("Easy!"), Cron.Minutely);         }     } } But it throws an exception on runtime:
Additional information: JobStorage.Current property value has not been initialized. You must set it before using Hangfire Client or Server API.
So I need a job storage to run this. But all examples in SQL storage etc. Is there any way to run this example with some kind of memory storage?
JobStorage.Current = new SqlServerStorage("ConnectionStringName", options);   // to   JobStorage.Current = new MemoryDbStorage(string.Empty, options);   The Hangfire. AspNetCore integration package adds an extension method to register all the services, their implementation, as well as logging and a job activator. As a parameter, it takes an action that allows to configure Hangfire itself.
You can use Hangfire.MemoryStorage for this.
Simply add this nuget package.
And then you can use it like -
GlobalConfiguration.Configuration.UseMemoryStorage(); For NET Core (web application):
Just to make it very obvious because it wasn't obvious to me.
Install following nuget packages:
In Startup.cs:
    public void ConfigureServices(IServiceCollection services)     {         // other registered services         ...          services.AddHangfire(c => c.UseMemoryStorage());     }      public void Configure(IApplicationBuilder app, IHostingEnvironment env)     {         // other pipeline configuration                     ...          app.UseHangfireServer();          app.UseMvc();     } Anything less than above and my enqueued method did not fire.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With