我有一个控制台应用程序来测试 HangFire。这是代码:
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);
}
}
}
但它在运行时抛出异常:
附加信息:JobStorage.Current 属性值尚未
已初始化。使用Hangfire客户端或服务器之前必须设置它
API。
所以我需要一个作业存储来运行它。但是所有示例都在 SQL 存储等中。有什么方法可以使用某种内存存储来运行这个示例吗?
JobStorage.Current = new SqlServerStorage("ConnectionStringName", options);
// to
JobStorage.Current = new MemoryDbStorage(string.Empty, options);
您可以使用Hangfire.MemoryStorage https://github.com/perrich/Hangfire.MemoryStorage为了这。
只需添加这个 nuget 包 https://www.nuget.org/packages/Hangfire.MemoryStorage/.
然后你可以像这样使用它 -
GlobalConfiguration.Configuration.UseMemoryStorage();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)