在控制台应用程序中处理任务¶

要在控制台应用程序中开始使用Hangfire,您需要首先将Hangfire包安装到控制台应用程序。因此,使用您的软件包管理器控制台窗口进行安装:

  1. PM> Install-Package Hangfire.Core

然后添加任务存储安装所需的软件包。例如,使用SQL Server:

  1. PM> Install-Package Hangfire.SqlServer

仅需 Hangfire.Core 软件包

Please don’t install the Hangfire package for console applications as it is a quick-start package only and contain dependencies you may not need (for example, Microsoft.Owin.Host.SystemWeb).

安装软件包后, 只需新建一个 Hangfire Server 的实例并像 前面章节 一样启动它。不过,还可以有一些细节:

  • 由于 Start 方法是 非堵塞 的,通过调用 Console.ReadKey 方法防止被在应用中被关闭。
  • 对 Stop 方法的调用是隐式的 – 它是通过 using 语句完成的。
  1. using System;
  2. using Hangfire;
  3. using Hangfire.SqlServer;
  4.  
  5. namespace ConsoleApplication2
  6. {
  7. class Program
  8. {
  9. static void Main()
  10. {
  11. GlobalConfiguration.Configuration.UseSqlServerStorage("connection_string");
  12.  
  13. using (var server = new BackgroundJobServer())
  14. {
  15. Console.WriteLine("Hangfire Server started. Press any key to exit...");
  16. Console.ReadKey();
  17. }
  18. }
  19. }
  20. }

原文:

http://hangfirezh.zhs.press/background-processing/processing-jobs-in-console-app.html